android-服务可以接收包裹吗?

android-服务可以接收包裹吗?,第1张

概述我想在添加新软件包时显示通知.我找到了清单文件所需的代码!我不知道的是如何在我的服务中捕获广播.我怎样才能做到这一点?解决方法:您可以注册一个PACKAGE_INSTALL和PACKAGE_ADDED接收器以接收软件包安装和卸载事件,然后在添加新软件包时从onReceiveofBroadcastReceiver的onRecei

我想在添加新软件包时显示通知.我找到了清单文件所需的代码!我不知道的是如何在我的服务中捕获广播.我怎样才能做到这一点?

解决方法:

您可以注册一个PACKAGE_INSTALL和PACKAGE_ADDED接收器以接收软件包安装和卸载事件,然后在添加新软件包时从onReceive of broadcast Receiver的onReceive上启动服务(即IntentService)以显示通知.

在Manifest.xml中:

<receiver androID:name=".PackageReceiver">        <intent-filter>            <action androID:name="androID.intent.action.PACKAGE_INSTALL" />            <action androID:name="androID.intent.action.PACKAGE_ADDED" />            <data androID:scheme="package"/>        </intent-filter>    </receiver>

在PackageReceiver中:

public class PackageReceiver extends broadcastReceiver {   @OverrIDe   public voID onReceive(Context context, Intent intent) {       if (intent.getAction().equals(Intent.PACKAGE_INSTALL)) {             //START YOUR SERVICE HERE        }     }}

或者,您也可以在服务中动态注册接收者

br = new broadcastReceiver() {        @OverrIDe        public voID onReceive(Context context, Intent intent) {            // Todo auto-generated method stub            //SHOW notification here or Start Notification Service        }    };    IntentFilter intentFilter = new IntentFilter();    intentFilter.addAction(Intent.ACTION_PACKAGE_ADDED);    intentFilter.addAction(Intent.ACTION_PACKAGE_INSTALL);    intentFilter.addDataScheme("package");    registerReceiver(br, intentFilter);
总结

以上是内存溢出为你收集整理的android-服务可以接收包裹吗?全部内容,希望文章能够帮你解决android-服务可以接收包裹吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1085939.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存