我想要做的是在我的Android手机中的耳机(插件)是我的代码时启动我的应用程序,但没有任何反应:
public class BootBroadcast extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
context.startService(new Intent(context, TestService.class));
Intent newIntent = new Intent(".android.intent.action.MAIN");
context.startActivity(newIntent);
}
}
这是清单:
<activity
android:name="com.example.talktome.SplashScreen"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".BootBroadcast">
<intent-filter>
<action android:name="android.intent.action.HEADSET_PLUG"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
请任何建议???
答案 0 :(得分:0)
您是否已将此代码段添加到当前活动中?
IntentFilter receiverFilter = new IntentFilter(
Intent.ACTION_HEADSET_PLUG);
BootBroadcast receiver = new BootBroadcast();
registerReceiver(receiver, receiverFilter);
在BootBroadcast类
中添加此标志newIntent .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
在第二个活动的清单中添加此内容
<activity
android:name="com.example.talktome.TestService"
android:label="@string/app_name" />