小编bon*_*ond的帖子

在BOOT_COMPLETED之后,BroadcastReceiver无法正常工作

我正在尝试在boot_completed之后拦截传入的SMS,但我在这行中遇到NullPointerException问题:

Object[] rawMsgs=(Object[])intent.getExtras().get("pdus");
Run Code Online (Sandbox Code Playgroud)

这是我的清单:

    <uses-permission android:name="android.permission.SEND_SMS"></uses-permission> 
    <uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-    permission>
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

    <application android:icon="@drawable/icon" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar">
        <receiver android:name=".SMSReceiver" 
            android:permission="android.permission.BROADCAST_SMS"
            > 
            <intent-filter android:priority="1000"> 
                <action     android:name="android.provider.Telephony.SMS_RECEIVED"></action>
                <action android:name="android.intent.action.BOOT_COMPLETED"></action>
            </intent-filter> 
        </receiver>
    </application>
Run Code Online (Sandbox Code Playgroud)

接收器:

public class SMSReceiver extends BroadcastReceiver 
    { 


    private final LocationListener locationListener = new LocationListener() {
          public void onLocationChanged(Location location) {


          }

          public void onProviderDisabled(String provider){}
          public void onProviderEnabled(String provider) {}
          public void onStatusChanged(String provider, int status, Bundle extras) {} 
        };

    @Override
    public void onReceive(Context context, Intent …
Run Code Online (Sandbox Code Playgroud)

sms android broadcastreceiver

13
推荐指数
1
解决办法
3886
查看次数

标签 统计

android ×1

broadcastreceiver ×1

sms ×1