我有一个安卓应用程序,使用Alarm Manager调度事件(位置更新)在未来执行。只要应用在前台或后台运行,预定的事件就能按预期执行。但是,一旦我在任务管理器中强制关闭应用程序或者当安卓系统由于内存问题在后台杀掉应用程序时,我将无法再接收来自Alarm Manager的广播。
根据各种帖子和博客的建议,我尝试使用以下方法: 1. Intent.Flag_Include_Stopped_Packages 2. 在清单文件中添加接收器android:process=":remote" 3. 在清单文件中添加接收器android:exported="true"
在服务中:
在清单文件中:
根据各种帖子和博客的建议,我尝试使用以下方法: 1. Intent.Flag_Include_Stopped_Packages 2. 在清单文件中添加接收器android:process=":remote" 3. 在清单文件中添加接收器android:exported="true"
在服务中:
Intent locationIntent = new Intent("com.dummy.intent");
locationIntent.addFlags(Intent.FLAG_INCLUDE_STOPPED_PACKAGES);
locationIntent.putExtra(LocationLibraryConstants.LOCATION_BROADCAST_EXTRA_LOCATIONINFO, locationInfo);
context.sendBroadcast(locationIntent, "android.permission.ACCESS_FINE_LOCATION");
在清单文件中:
<receiver android:name=".NearestStationBroadcastReceiver" android:enabled="true"
android:exported="true"
android:process=":remote">
<intent-filter>
<action android:name="com.dummy.intent" />
</intent-filter>
</receiver>
有人能帮我解决一下问题吗?