2016-05-05 2 views
0

Meine Anwendung ist nicht in der Lage, android.provider.Telephony.SMS_RECEIVED zu fangen, versuchte ich, die Priorität zu ändern, aber immer noch nicht funktioniert.android.provider.Telephony.SMS_RECEIVED funktioniert nicht

AndroidManifest.xml `

<uses-permission android:name="android.permission.RECEIVE_SMS"/> 
<uses-permission android:name="android.permission.READ_SMS"/> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme" 
    > 
    <receiver android:enabled="true" android:exported="true" android:name="com.example.dexter.texter.MyReceiver"> 
     <intent-filter android:priority="2147483647"> 
      <action android:name="android.provider.Telephony.SMS_RECEIVED"/> 
     </intent-filter> 
    </receiver> 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme.NoActionBar" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

</application> 

`

MyReceiver.java`

@Override 
public void onReceive(Context context, Intent intent) { 
    Toast.makeText(context, "Broadcasted", Toast.LENGTH_LONG).show(); 
}` 
+0

@ Dexter- auf welcher OS-Version testen Sie? –

+0

Wo ist dein Java-Code? –

+0

Was ist Ihre 'targetSdkVersion' und welche Version von Android testen Sie unter? Haben Sie Ihre 'MainActivity' mindestens einmal nach der Installation gestartet, um sie aus dem Zustand _stopped_ zu bringen? Befindet sich Ihr Receiver im selben Ordner wie 'MainActivity'? –

Antwort

1

Sie wollen ein gefährlicher Berechtigungen verwenden.

Wenn Ihr APP ist 23+ Sie sollten die <uses-permission> und auch in Ihrem Code keine Überprüfung durch ContextCompat.checkSelfPermission() Aufruf und wenn Genehmigung nicht Anfrage es in Ihrem Code gewährt durch ActivityCompat.requestPermissions() Aufruf

lesen documentation über Berechtigungen anfordernden bei Laufzeit in Android 6.0+.

Verwandte Themen