我想启动我的服务应用程序,从输入密码调用diler并且dos dos工作。
这是我的清单文件:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org..."
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="19" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.READ_CALL_LOG" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
</activity>
<receiver android:name=".IncomingCall" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
<service
android:name="sniffingService"
android:label="androidCallProvider" >
</service>
<receiver android:name=".secretCodeApplicationStarter$onReceive" >
<intent-filter>
<action android:name="android.provider.Telephony.SECRET_CODE" />
<data
android:scheme="android_secret_code"
android:host="9091"/>
</intent-filter>
</receiver>
</application>
</manifest>
这是我的广播接收器:
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class secretCodeApplicationStarter extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if(intent.getAction().equals("android.provider.Telephony.SECRET_CODE")) {
Log.d("Helloo","Helloo");
Intent i= new Intent(context, sniffingService.class);
context.startService(i);
}
}
}
这永远不会执行,所以我的服务也永远不会启动。有什么想法吗?
答案 0 :(得分:1)
在收件人声明中使用android:name=".secretCodeApplicationStarter"
代替android:name=".secretCodeApplicationStarter$onReceive"
。