마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

java기반 안드로이드 앱개발중입니다. 모든기종이 혹시 무음이든 진동이든 강제로 소리나게 할수있을까요?

0 추천

현재 lg g5기기 테스트결과 강제로 소리나오는거까지는 완료했지만 s8기종에서는 벨소리 모드여야만 나옵니다.

제가 하고싶은건 무음이든 진동이든 특정플래그 전달시 알람이 강제로 울렸으면 좋겠고,

다른플래그를 전송하면 알람이 멈췄으면좋겠는데 이부분이 잘해결되지않습니다.

해당부분 코드입니다.

 

// 알림 builder 설정
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);

    Drawable thumb = getResources().getDrawable(R.drawable.ic_backpack);
    Bitmap bmpOrg = ((BitmapDrawable) thumb).getBitmap();
    notificationBuilder
        .setSmallIcon(R.drawable.push_icon)
        .setColor(getResources().getColor(R.color.red))
        .setColorized(true)
        .setLargeIcon(bmpOrg)
        .setContentTitle(title)
        .setContentText(contents)
        .setAutoCancel(true)
        .setSound(defaultSoundUri).setLights(000000255, 500, 2000)
        .setPriority(PRIORITY_MAX)
        .setContentIntent(pendingIntent)
        .setStyle(new NotificationCompat.BigTextStyle()
                .bigText(contents)
                .setBigContentTitle(title)
                .setSummaryText("알림 메세지")
        );

    Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_ALARM);
    Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);

    if(flag >= 1) {
        // flag 1이상일때 강제 알림
        r.play();
    }
    if (flag == 0){
        System.out.println("5465");
        r.stop();
    }

NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);


PowerManager pm = (PowerManager) this.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakelock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, "powerenglish:TAG");
wakelock.acquire(5000);
정후이11 (270 포인트) 님이 2022년 3월 31일 질문
정후이11님이 2022년 3월 31일 수정

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...