Nicht geschützt broadcast verursacht Absturz beim starten der app

Machte ich einen Dienst für die Benachrichtigung erhalten, jedes mal, wenn Daten aktualisiert am hinteren Ende. Hier ist der code für den service:

public class FeedbackService extends IntentService {

public FeedbackService() {
    super("FeedbackService");
}

@Override
protected void onHandleIntent(Intent intent) {
    Log.d("MyService", "About to execute feedback call");

    feedbackCheckCall(this);
}

private void feedbackCheckCall(final Context context){
  //Call for getting checking data from backend.

}

private void sendNotification(Context context) {
    NotificationCompat.Builder builder =
            new NotificationCompat.Builder(this)
                    .setSmallIcon(R.mipmap.ic_launcher_icon)
                    .setContentTitle("Feedback Reply")
                    .setContentText("You've a reply waiting for your feedback!")
                    .setVibrate(new long[]{500,500,500});

    Intent notificationIntent = new Intent(context, navHomeActivity.class );
    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent,
            PendingIntent.FLAG_UPDATE_CURRENT);
    builder.setContentIntent(contentIntent);

    //Add as notification
    NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
    manager.notify(0, builder.build());
}

}

Hier ist der code für den Empfänger :

public class FeedbackRecieiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
    Intent dailyUpdater = new Intent(context, FeedbackService.class);

    context.startService(dailyUpdater);

    Log.d("AlarmReceiver", "Called context.startService from AlarmReceiver.onReceive");
}
}

Hier der code, von wo aus ich nenne es:

    Calendar updateTime = Calendar.getInstance();
    updateTime.setTimeZone(TimeZone.getDefault());
    updateTime.set(Calendar.HOUR_OF_DAY,0);
    updateTime.set(Calendar.MINUTE, 0);
    updateTime.set(Calendar.SECOND, 0);

    long intervalTime = 2*60*60*1000; //in milliseconds format is : h*m*s*1000

    Intent intent = new Intent(context, FeedbackRecieiver.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

    PendingIntent pendingIntent = PendingIntent.getBroadcast(context,0,intent,PendingIntent.FLAG_CANCEL_CURRENT);

    AlarmManager alarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);

    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,updateTime.getTimeInMillis(),intervalTime,pendingIntent);

Mein manifest-Deklarationen sind :

 <service android:name=".navFragments.feedbackSuppport.FeedbackService"/>
 <receiver  android:name=".navFragments.feedbackSuppport.FeedbackRecieiver"/>

Die app abstürzt, wenn ich ein signiertes Exemplar mit diesem Fehler beim Start:

 Sending non-protected broadcast com.motorola.motocare.INTENT_TRIGGER from system 6836:com.motorola.process.system/1000 pkg com.motorola.motgeofencesvc
                                               java.lang.Throwable
                                                   at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:18179)
                                                   at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:18779)
                                                   at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:512)
                                                   at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2905)
                                                   at android.os.Binder.execTransact(Binder.java:565)

Kann mir bitte jemand helfen mit diesem? Ich bin wirklich hier hängengeblieben. Vielen Dank im Voraus.

Sind Sie sicher, dass der Fehler von der app aus? Nichts in deinem code scheint zu finden, dass broadcast.
Dies ist die neueste code habe ich Hinzugefügt, um meine Anwendung. Ich verstehe nicht, warum es wäre etwas anderes. Es funktioniert, wenn ich Teste es per usb-live-Kopie. Was denkst du könnte es sein?

InformationsquelleAutor Kavach Chandra | 2017-03-21

Schreibe einen Kommentar