Android 如何在设备启动时使用BroadcastReceivers启动GoogleAPI-ActivityRecognitionAPI?
我使用活动使用了这个API,它可以正常工作。我试着用这个广播接收器启动MainActivity,结果它成功了。但是,当我尝试这个,它崩溃了我的应用程序 我是否需要向意图添加标志?在这种情况下怎么做 我尝试了这些代码,但我的应用程序在启动时崩溃: 1广播接收机等级: 2活动识别服务Android 如何在设备启动时使用BroadcastReceivers启动GoogleAPI-ActivityRecognitionAPI?,android,google-api,broadcastreceiver,activity-recognition,Android,Google Api,Broadcastreceiver,Activity Recognition,我使用活动使用了这个API,它可以正常工作。我试着用这个广播接收器启动MainActivity,结果它成功了。但是,当我尝试这个,它崩溃了我的应用程序 我是否需要向意图添加标志?在这种情况下怎么做 我尝试了这些代码,但我的应用程序在启动时崩溃: 1广播接收机等级: 2活动识别服务 首先,我使用了此链接中使用的API:在AdnroidManifest.xml中添加必要的权限: <uses-permission android:name = "android.permission.RECEIV
首先,我使用了此链接中使用的API:在AdnroidManifest.xml中添加必要的权限:
<uses-permission android:name = "android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
之后,在清单文件中声明此接收者:
<receiver android:name="com.example.MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
现在,只要设备启动,服务就会自动启动。在AdnroidManifest.xml中添加必要的权限:
<uses-permission android:name = "android.permission.RECEIVE_BOOT_COMPLETED"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
之后,在清单文件中声明此接收者:
<receiver android:name="com.example.MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
现在该服务将自动启动,每当设备启动时寻找相同的解决方案,我能想到的最好办法是从启动时启动主应用程序,然后将其发送到后台。寻找相同的解决方案,我能想到的最好办法是从启动时启动主应用程序,然后将其发送到后台。
<receiver android:name="com.example.MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
public class MyIntentService extends IntentService {
@Override
protected void onHandleIntent(Intent i) {
//Release the wake lock
WakefulBroadcastReceiver.completeWakefulIntent(i);
}
}