public class MySmsReceiver extends WakefulBroadcastReceiver { @Override public void onReceive(Context context,Intent intent) { System.out.println("triggered sms"); if(intent.getAction().equals(Telephony.Sms.Intents.SMS_RECEIVED_ACTION)) { Toast.makeText(context,"message Received",Toast.LENGHT_SHORT).show(); } }
我的收件人的清单文件是
<receiver android:name=".MySmsReceiver"> <intent-filter> <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </intent-filter> </receiver>
文件说,如果我在清单文件中声明一个接收者,它应该始终工作.但在我的情况下不是…
但是,当我通过刷新他的最近的应用程序清除它,它只是停止工作.在我去任务管理员之后,看到MyApps forcetop被禁用,如以下
我想出了一些应用程序,如watsapp和fb总是保持在记忆中,说这个bcoz之后刷新清除最近的应用程序仍然任务经理有如下所示的followig状态
我怎么能这样做到我的应用程序..什么会使我的应用程序的行为像其他第三方应用程序,如watspp和Facebook …我如何使我的应用程序在内存总是我问这个然后只有我的接收器将永远工作..如果我错了,给我一个解决方案来做这个…
我一直在搜索很多,但仍然找不到解决方案…我错了吗?还是真的有办法呢?请有人帮助我…这让我一个星期!希望我在这里解释我的问题,如果我不问我,我会给你立即回应.
在华为设备上,该设置称为“受保护的应用”.您无法以编程方式将您的应用添加到“受保护的应用”列表中.你需要告诉用户他已经安装了你的应用程序后必须这样做.知名应用程序(如Whatsapp,Facebook,Google Mail)由制造商自动添加.
不同设备上的这种行为可能不同,并且在不同版本的Android上可能会有所不同,如果设备是针对特定移动操作符的“品牌”,则移动操作符也可以修改设置.
有关详细信息,请参阅“Protected Apps” setting on Huawei phones,and how to handle it.
编辑:添加:
此外,Android破坏了Android 4.4(Kitkat)中的“刷新”行为,因此它会导致已被刷新的应用程序出现问题.粘性服务不会被重新启动,并且广播意向未被传递.这里有一些关于解决办法的信息:In android 4.4,swiping app out of recent tasks permanently kills application with its service . Any idea why?
此外,您是否从Google Play商店安装了您的应用程式?对于从Play商店安装的应用程序与本地安装的应用程序(从下载或通过adb或其他方式)的应用程序,行为可能不同.