Я разработал приложение, которое использует push-уведомления с Mixpanel. Они работают хорошо, включая глубокие ссылки.
Проблема в том, что мой клиент хочет, чтобы они звучали после получения, но они не воспроизводят никакого звука.
Прочитав документацию, я знаю, что для iOS это так же просто, как добавить поле в пользовательские данные, но в Android нет звукового поля для его настройки. Если я не ошибаюсь, единственным решением является расширение широковещательного приемника Mixpanel, поэтому я изменил свой AndroidManifest следующим образом:
<receiver android:name="com.mixpanel.android.mpmetrics.GCMReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="my.package.name" />
</intent-filter>
</receiver>
к этому:
<receiver android:name=".auxiliary.LocalNotificationBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="my.package.name" />
</intent-filter>
</receiver>
И я добавил этот класс .auxiliary.LocalNotificationBroadcastReceiver:
import com.mixpanel.android.mpmetrics.GCMReceiver;
public class LocalNotificationBroadcastReceiver extends GCMReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
super.onReceive(context, intent);
}
}
Таким образом, push-уведомления, отправленные из Mixpanel, по-прежнему приходят правильно, но я не знаю, как добавить звук к этому уведомлению.
Любая помощь будет очень признательна!