Android-Rundfunkempfänger empfängt keine Absicht

Ich habe zwei Apps, die ich gemacht habe, und versuche, eine Absicht von einem zum anderen zu senden, aber die Absicht kommt nie zum onReceive() aber dieses Problem ist nur ein Weg. Die erste App kann an die zweite senden, aber die zweite kann nicht senden info. Ich benutze eine andere Absicht, um von der zweiten zur ersten zu senden, aber ansonsten sind sie identisch. Irgendwelche Ideen, warum dies nicht funktionieren könnte? Ich habe alles versucht, was ich mir vorstellen kann und lese die meisten Beiträge, die ich hier finden konnte und ohne Erfolg.

Es stürzt nicht oder gibt mir irgendwelche Hinweise darauf, was in der Logcat geschieht, es macht einfach nichts.

Sendefunktion

 private void sendFinishLog(String ID, String Cond) { Log.d("me", "send finish log"); Intent logIntent = new Intent(); logIntent.putExtra("ID", ID); logIntent.putExtra("Cond", Cond); logIntent.setAction("com.me.intent.finishlog"); Log.d("me","logIntent : " + logIntent.toString() +logIntent.getExtras().toString()); sendBroadcast(logIntent); } 

Erhalten Klasse

 public class LogReceiver extends BroadcastReceiver { public static ArrayList<LogDataHolder> logData = new ArrayList<LogDataHolder>(); private boolean found; static SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); private static String lasttime; private static String now = "Boot time"; @Override public void onReceive(Context cont, Intent logIntent) { Log.d("me","On receive"); etc..... } 

App manifestieren

 <!-- for receiving logs --> <receiver android:name = "LogReceiver" android:enabled="true"> <intent_filter> <action android:name="com.me.intent.finishlog" /> </intent_filter> </receiver> 

  • Wie kann ich das Bild + Text zusammen mit ACTION_SEND in android teilen?
  • Über Android-App aus einer URL starten
  • Android-Aktivität ohne GUI
  • Senden Sie eine Sendung nur an bestimmte Aktivitäten
  • Android Wie man Intent Filter für benutzerdefinierte Dateierweiterung, die nicht macht es Teil eines Wählers für alles am Telefon zu schaffen
  • Match HTTP-Parameter in URL mit Android Intent Filters
  • Integration der App mit Google-Suchergebnissen und Chrome
  • Firefox für Android startet nicht App, wenn Link geklickt wird
  • 4 Solutions collect form web for “Android-Rundfunkempfänger empfängt keine Absicht”

    etwas wie:

     public void onResume() { IntentFilter filter = new IntentFilter(); getActivity().registerReceiver(mLogReceiver,filter); } 

    Und für unregistrierung:

     public void onPause() { getActivity().unregsiterReceiver(mLogreceiver); } 

    Edit: Ich habe gerade gedacht, dass deine LogReceiver-Klasse keinen Konstruktor hat. Du musst auch einen schreiben:

     private LogReceiver mLogReceiver = new LogReceiver() { 

    Und danach kannst du die onReceive-Methode verwenden, wie du es schon in deinem Code hast.

    Versuche es noch einmal so. Die Kategorie muss eventuell hinzugefügt werden

     <!-- for receiving logs --> <receiver android:name = "LogReceiver" android:enabled="true"> <intent_filter> <action android:name="com.me.intent.finishlog" /> <category android:name="android.intent.category.DEFAULT" /> </intent_filter> </receiver> 

    Sie erklärten den Hörer im Manifest als:

      android:name = "LogReceiver" 

    In der Dokumentation heißt es:

    Der Name der Klasse, die den Broadcast-Empfänger implementiert, eine Unterklasse von BroadcastReceiver. Dies sollte ein voll qualifizierter Klassenname sein (wie zB "com.example.project.ReportReceiver"). Wenn jedoch das erste Zeichen des Namens eine Periode ist (z. B. "ReportReceiver"), wird es als Kurzschrift an den im Element angegebenen Paketnamen angehängt.

    Mit anderen Worten, es muss das Paket enthalten. Versuchen Sie, den Namen zu ändern:

      android:name = ".LogReceiver" 

    oder

      android:name = "com.me.yourpackagename.LogReceiver" 

    Mein Problem wurde gelöst, als ich den Receiver unregistriert von der OnPause () entfernte. Methode.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.