NotificationCompat.Builderによって作成された通知にサウンドをどのように追加しますか? resにrawフォルダーを作成し、そこにサウンドを追加しました。それでは、どうすれば通知に追加できますか?これは私の通知コードです
int NOTIFY_ID=100;
Intent notificationIntent = new Intent(this, Notification.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_CANCEL_CURRENT);
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(this)
.setContentIntent(pendingIntent)
.setSmallIcon(R.drawable.notification)
.setContentTitle("Warning")
.setContentText("Help!")
NotificationManager mgr = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mgr.notify(NOTIFY_ID, mBuilder.build());
_NotificationCompat.Builder
_クラス-setSound(Uri soundUri)
には明白なメソッドがあるので、ここで問題はUri
でサウンドを参照する方法にあると思います。
raw
リソースにアクセスするには、次のようにUri
を作成する必要があります。
Android.resource:// [PACKAGE_NAME]/[RESOURCE_ID]
したがって、コードは次のようになります。
_Uri sound = Uri.parse("Android.resource://" + getPackageName() + "/" + R.raw.notifysnd);
mBuilder.setSound(sound);
_
通知でサウンドを再生するには:
Notification notification = new Notification(icon, tickerText, when);
通常の通知手順を行う
通知でデフォルトのサウンドを再生するには:
notification.defaults |= Notification.DEFAULT_SOUND;
通知でカスタムサウンドを再生するには:
notification.sound = Uri.parse("file:///sdcard/notification/notification.mp3");
次に、通知マネージャーを使用して通知を送信します。これらのステートメントの両方を使用すると、アプリケーションはデフォルトでデフォルトのサウンドを使用します。
Android 8(Oreo)以上の場合、 Notification Channel を使用して通知を表示する必要があります。無効にしていない場合は、自動的に音が鳴ります。
古いデバイスでは、通知ビルダーでサウンドを設定できます。 Notification.Builder.setSound()
を使用してカスタムサウンドを設定するか、または
Notification.Builder.setDefaults(NotificationCompat.DEFAULT_SOUND)
デフォルトのサウンドを設定します。
デフォルト もあり、振動とライト用です