ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Android] android.app.RemoteServiceException: Bad notification for startForeground: java.lang.RuntimeException: invalid channel for service notification
    Android/Exception 2020. 12. 14. 09:59
    ๋ฐ˜์‘ํ˜•
    • ์•ˆ๋“œ๋กœ์ด๋“œ ์—๋Ÿฌ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

    ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๋Š” Notification ์„ ์‚ฌ์šฉ ์‹œ์— Oreo ๋ฒ„์ „ (API26) ์ด์ƒ์ด๋ฉด notification Channel์„ ๋“ฑ๋กํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    ์ด notification Channel์„ ๋“ฑ๋กํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ์— ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฅ˜๋กœ ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

     

    public void createNotificationChannel() {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                NotificationManager manager = getBaseContext().getSystemService(NotificationManager.class);
    
                NotificationChannel serviceChannel = new NotificationChannel(
                        CHANNEL_ID,
                        CHANNEL_NAME,
                        NotificationManager.IMPORTANCE_NONE
                );
                manager.createNotificationChannel(serviceChannel);
            }
        }

     

    ํ•˜์ง€๋งŒ ์ €๋Š” channel์„ ๋“ฑ๋กํ•˜์—ฌ๋„ ๊ณ„์† ๋˜‘๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”๋ฐ notificationChannel์— ๋“ฑ๋กํ•œ Channel_ID์™€ NotificationCompat.Builder ์— ๋“ฑ๋กํ•œ Channel_ID๊ฐ€ ๋‹ฌ๋ผ์„œ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. 

     

    ๋”ฐ๋ผ์„œ createNotificationChannel ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ๋˜‘๊ฐ™์€ channel_id๋กœ ์„ค์ •ํ•˜๋ฉด ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

    ๋ฐ˜์‘ํ˜•

    'Android > Exception' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    [Android] java.lang.IllegalAccessException : is not accessible from java.lang.Class<android.app.Instrumentation>  (0) 2020.10.25
Designed by Tistory.