혹시 안드로이드 스튜디오 -코틀린 질문좀..

제가 지금 안드로이드 스튜디오를 이용해서 코틀린을 써보고 있는데

간단한 알림을 확인 하는 코드를 짜고 있거든요?

제대로 오는지 확인하기 위해서 메뉴에서 누르면 알람이 오게 짜놨는데

알람이 총 두개가 와야하는데

하나는 메뉴에서 아무리 눌러도 반응이 없더라구요

intent 문제 같기도하고… 코틀린을 제대로 시작한지 하루인가 이틀밖에 안되서

너무 모르겠네요

코드는

    private fun showNotification(){ //첫번째 알람
        val bitmap = BitmapFactory.decodeResource(resources, R.drawable.android)
        val intent = Intent(this, TempActivity::class.java)
        val pendingIntent = with(TaskStackBuilder.create(this)){
            addNextIntentWithParentStack(intent)
            getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT)
        }
        val builder = NotificationCompat.Builder(this, channelID)
                .setSmallIcon(R.mipmap.ic_launcher)
                .setLargeIcon(bitmap)
                .setContentTitle("Notification Title")
                .setContentText("Notification body")
                .setPriority(NotificationCompat.PRIORITY_DEFAULT)
                .setStyle(NotificationCompat.BigPictureStyle()
                .bigPicture(bitmap)
                .bigLargeIcon(null))  // hide largeIcon while expanding
                .setStyle(NotificationCompat.BigTextStyle()
                .bigText(resources.getString(R.string.long_notification_body)))
            .setContentIntent(pendingIntent)
            .setAutoCancel(true)
        NotificationManagerCompat.from(this).notify(myNotificationID, builder.build())
    }

    private fun showNotification2(){ //두번째 알람
        val bitmap = BitmapFactory.decodeResource(resources, R.drawable.android)
        val intent = Intent(this, TestActivity::class.java)
        val pendingIntent = with(TaskStackBuilder.create(this)){
            addNextIntentWithParentStack(intent)
            getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT)
        }
        val builder = NotificationCompat.Builder(this, channelID2)
            .setSmallIcon(R.mipmap.ic_launcher)
            .setContentTitle("Notification Title2")
            .setContentText("Notification body2")
            .setPriority(NotificationCompat.PRIORITY_DEFAULT)
            .setStyle(NotificationCompat.BigPictureStyle().bigPicture(bitmap).bigLargeIcon(null))  // hide largeIcon while expanding
            .setContentIntent(pendingIntent)
            .setAutoCancel(true)
        NotificationManagerCompat.from(this).notify(myNotificationID2, builder.build())
    }

이런식으로 각각 알람을 보내게 하는 함수 두개를 만들었는데

첫번째 함수는 제대로 오는데 두번째는 아무리 눌러봐도 안오네요

연결이 제대로 안된거 아니냐 하는데

그건 또 아닌거같고…

이런식으로 총 두개가 와야하는데 메뉴에서 누르면

두번째꺼가 안오네요

메뉴 모양은 이런식이구요

모두들 죄송합니다… 스스로 다행히 해결했습니다…

질문을 하는건 죄송한게 아닙니다.

스스로 답변했다면 더 대단한거죠 ㅎㅎㅎㅎ
많은 사람들이 검색을 통해 해당이슈에 대한 해결책을 미래에 얻을수도 있는겁니다 ㅎㅎㅎㅎ 부끄러워하지마세영

그나저나 뭐가 문제여서 어떻게해결하셨나요?
자랑스럽게 이야기하셔도 됩니당 ㅋㅋㅋㅋ

해결하시고 나서 해결 방법 정리해주시면 다음에 비슷한 내용으로 찾아보는 분들께 도움 될 것 같습니다 ㅎㅎ

보시면 각 채널 ID가 channelID channelID2 이렇게 두개로 나누어 놨는데

    private fun createNotificationChannel() {
        if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O){
            val channel = NotificationChannel(channelID, "default channel",
            NotificationManager.IMPORTANCE_DEFAULT)
            val channel2 = NotificationChannel(channelID2, "notice channel",NotificationManager.IMPORTANCE_DEFAULT)

            channel.description = "description text of this channel."
            channel2.description = "description text of this channel2."

            val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
            notificationManager.createNotificationChannel(channel)

            val notificationManagerSecond =getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
            notificationManagerSecond.createNotificationChannel(channel2)
        }
    }

제가 위에는 올리지 않았는데

원래 여기서 채널을 활성화 시켜주는 코드가 따로 있었습니다.

근데 이건 디폴트로 매우 잘 돌아가던 코드라 의심을 안하고 손을 안댔었구요

근데 여기서 channelID 만 활성화 시켜놓고(default여서 손을 안댐)

channelID2를 코드에 변수로 추가해 활성화 시키는걸 까먹은 것이었습니다…

넵 올렸습니다 저랑 같은 실수들 안하시면 좋겠네요 너무 쪽팔리네요 ㅋㅋ