Hier ist meine Receiver-Datei. Was ich fühle, hat kein Problem. Ich drucke nur die Art der Absicht, die übergeben wird. Gemäß mir wird onReceive nie genannt. Ich denke, es gibt ein Problem mit meinem Manifest selbst? Oder irgendwelche anderen Ideen? Der Empfänger ist mit keinem anderen Code in der Anwendung verknüpft.Warum funktioniert mein Screen On/Off BroadcastReceiver nicht?
Mein Manifest sieht auch gut aus, aber ich kann nicht herausfinden, warum es nicht funktioniert.
<?xml version="1.0" encoding="utf-8"?>
<manifest package="sharukh.locky"
xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="AIzaSyAGufoN9huWkmw8nTskk2aaFHW1gXn1Z7Q"/>
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
<!-- Activities -->
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".Tutorial"/>
<activity android:name=".TutorialSelectApp"/>
<activity
android:name=".LockScreen"
android:label="@string/title_activity_lock_screen"
android:theme="@style/AppTheme.NoActionBar"/>
<!-- Services -->
<service
android:name=".LockyService"
android:enabled="true"
android:exported="true"/>
<receiver
android:name=".BroadCastReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.SCREEN_OFF"/>
<action android:name="android.intent.action.HEADSET_PLUG"/>
</intent-filter>
</receiver>
</application>
</manifest>
Ich habe keine Empfänger dynamisch hinzugefügt/registriert/nicht registriert. Ich würde hier Hilfe benötigen.
beide Aktionen, die Sie Ihren Receiver für ausgestrahlt werden mit 'FLAG_RECEIVER_REGISTERED_ONLY' registriert haben, was bedeutet, dass sie nur durch dynamisch empfangen werden registrierte Empfänger. Ihre statisch registrierte Receiver-Klasse wird sie nicht bekommen. –
Ihr Paketname ist "sharukh.locky" richtig? ist Ihr Rundfunkempfänger im selben Paket? –