Уведомления Android воспроизводят звук из папки активов

Я пытаюсь воспроизвести звук уведомлений из папки ресурсов, но когда уведомление срабатывает, уведомление отображается, но звук не воспроизводится, и в logCat нет ошибки или предупреждения. Я использую этот код для создания уведомлений:

builder = new NotificationCompat.Builder(context)
                    // Set Icon
                    .setSmallIcon(R.drawable.ic_launcher)
                    // Set Ticker Message
                    .setTicker(message)
                    // Set Title
                    .setContentTitle(message)
                    // Set Text
                    .setContentText(context.getString(R.string.app_name))
                    // Add an Action Button below Notification
                    .addAction(R.drawable.share,
                            context.getString(R.string.share), pendingShare)
                    // Set PendingIntent into Notification
                    .setContentIntent(contentIntent)
                    // Dismiss Notification
                    .setAutoCancel(true)
                    .setSound(
                            Uri.parse("file:///android_assets/"
                                    + prefs.getString(Constants.NOTIF_SOUND,
                                            "mp3/al_affassi_full.mp3")));

может кто-нибудь помочь мне решить эту проблему? Спасибо!


person Darko Petkovski    schedule 20.12.2014    source источник


Ответы (2)


Поместите файл mp3 в папку raw. Если вы поместите его под asset/, он будет сжат дважды, и вы не сможете его использовать.

person greywolf82    schedule 20.12.2014

Создайте папку с именем raw под res и скопируйте в нее свой mp3-файл.

Затем вы можете установить,

setSound(Uri.parse("android.resource://"your package name"/"
                    + R.raw.your_map3_name);

И это должно работать.

person Mangala Savadi    schedule 20.12.2014