Fatal Exception: java.lang.OutOfMemoryError: int[] of length 1083403672 exceeds the VM limit
at android.util.ArrayMap.allocArrays(ArrayMap.java:196)
at android.util.ArrayMap.ensureCapacity(ArrayMap.java:307)
at android.os.Bundle.unparcel(Bundle.java:247)
at android.os.Bundle.getString(Bundle.java:1118)
at com.test.example.pushnotification.LocalyticsReceiver.handleNotificationReceived(LocalyticsReceiver.java:61)
at com.test.example.pushnotification.LocalyticsReceiver.onReceive(LocalyticsReceiver.java:52)
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2426)
at android.app.ActivityThread.access$1700(ActivityThread.java:139)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1276)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5103)
Код, который он указывает: -Fatal Exception: java.lang.OutOfMemoryError: Int [] длины 1083403672 превышает предел VM
String message = intent.getExtras().getString("message");
Пожалуйста, найдите код снимок ниже:
@Override
public void onReceive(Context context, Intent intent) {
String appKey = context.getResources().getString(R.string.localytics_api_key);
if (!TextUtils.isEmpty(appKey)) {
Localytics.integrate(context.getApplicationContext(), appKey);
}
if (intent.getAction().equals("com.google.android.c2dm.intent.REGISTRATION")) {
LocalyticsUtil.handleRegistration(intent);
} else {
Localytics.handlePushNotificationReceived(intent);
handleNotificationReceived(context, intent);
}
}
//handle notification when received
private void handleNotificationReceived(Context context, Intent intent) {
// Get the notification message
String message = intent.getExtras().getString("message");
...
Любая идея, почему это происходит при выборке экстра с намерением?
Что вы отправляете в уведомлении? длина содержимого огромная? ex фото base64 закодировано? – Yazan