当前位置: 首页 > news >正文

网站建设参数seo排名点击器原理

网站建设参数,seo排名点击器原理,招商网站怎么做,扬州网站建设文章前言 最近有项目过程中,有做app的同事反馈,三方应用无法监听关机广播。特地研究了下关机广播为啥监听不到。 1.原因:发送关机广播的类是ShutdownThread.java,添加了flag:Intent.FLAG_RECEIVER_FOREGROUND | Intent.FLAG_RECEIVER…

前言

     最近有项目过程中,有做app的同事反馈,三方应用无法监听关机广播。特地研究了下关机广播为啥监听不到。

1.原因:发送关机广播的类是ShutdownThread.java,添加了flag:Intent.FLAG_RECEIVER_FOREGROUND | Intent.FLAG_RECEIVER_REGISTERED_ONLY,表示只有在代码中动态注册,并且是前台服务和应用才能收到,所以在AndroidManifest.xml注册无法收到关机广播,后台服务中动态注册也无法收到。

2.前台服务注册关机广播。

  (1).启动前台服务: 

public class BootCompleteReceiver extends BroadcastReceiver {private static final String TAG = "BootCompleteReceiver";@Overridepublic void onReceive(Context context, Intent intent) {if (intent != null) {if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
//                ComponentName powerService = new ComponentName("com.android.mytest", "com.android.mytest.PowerService");
//                Intent mIntent = new Intent();
//                mIntent.setComponent(powerService);Intent powerServiceIntent = new Intent(context, PowerService.class);context.startForegroundService(powerServiceIntent);Log.d(TAG, "startForegroundService");}}}
}

(2)、添加前台服务权限,配置相关属性:

 权限:

 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

服务配置:

 <serviceandroid:name=".PowerService"android:foregroundServiceType="mediaPlayback"android:enabled="true"android:exported="false" ><intent-filter><action android:name="com.gwm.car.PowerService"/></intent-filter></service>

(3).注册关机广播:

package com.android.mytest;import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.IBinder;
import android.util.Log;import androidx.annotation.Nullable;public class PowerService extends Service {private static final String TAG = "PowerService";public ShutdownBroadcastReceiver mShutdownBroadcastReceiver;@Overridepublic void onCreate() {super.onCreate();Log.d(TAG, "onCreate");mShutdownBroadcastReceiver = new ShutdownBroadcastReceiver();}private Notification getNotification() {NotificationChannel channel = new NotificationChannel("channel_id", "channel_name", NotificationManager.IMPORTANCE_DEFAULT);NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);if (manager != null) {manager.createNotificationChannel(channel);}return new Notification.Builder(this, "channel_id").setContentTitle("shutdown").setContentText("Listening for shutdown")
//                .setAutoCancel(true).setSmallIcon(R.mipmap.ic_launcher_round).build();}@Overridepublic int onStartCommand(Intent intent, int flags, int startId) {Log.d(TAG, "onStartCommand");startForeground(1, getNotification());registerBroadcast();return START_STICKY;}@Overridepublic void onDestroy() {super.onDestroy();Log.d(TAG, "onDestroy");unregisterBroadcast();stopForeground(true);stopSelf();}@Nullable@Overridepublic IBinder onBind(Intent intent) {return null;}public void registerBroadcast() {Log.d(TAG, "registerBroadcast");IntentFilter intentFilter = new IntentFilter();intentFilter.addAction((Intent.ACTION_SHUTDOWN));registerReceiver(mShutdownBroadcastReceiver,intentFilter);}public void unregisterBroadcast() {if (mShutdownBroadcastReceiver != null) {unregisterReceiver(mShutdownBroadcastReceiver);}}
}

(4).关机广播实现

package com.android.mytest;import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;public class ShutdownBroadcastReceiver extends BroadcastReceiver {private static final String TAG = "ShutdownBroadcastReceiver";@Overridepublic void onReceive(Context context, Intent intent) {Log.d(TAG, "zjy onReceive intent:"+intent);}
}

(5).本地验证:

http://www.tj-hxxt.cn/news/16660.html

相关文章:

  • 做网站销售是干什么的最好的优化公司
  • 淄博 建网站怎样做品牌推广
  • 安徽合肥网站建设seol英文啥意思
  • 纳米加工平台网店seo
  • 做网站一年优化网站排名软件
  • 做新房用哪个网站好专门的网页制作工具有
  • 深圳网站设计 商城2023年最新时政热点
  • 公司执照注册流程及费用衡阳seo优化推荐
  • 东营网站建设推广广州引流推广公司
  • 找人做网站需要多少钱产品推广软文范文
  • 网站设置怎么清除公众号推广方案
  • 民治网站优化培训谷歌优化方法
  • 有哪些网站可以做视频2022年最新热点素材
  • 我想自己建立一个网站爱廷玖达泊西汀
  • 北京疫情防控政策大连seo优化
  • 怎么用手机做网站平台媒体邀约
  • 静态网站公用头部如何调用标题沈阳seo网站关键词优化
  • 深圳网站建设ctbsj广州seo代理计费
  • 现在允许做网站吗谷歌网站优化推广
  • 做外贸网站可以收付款吗关键词生成器 在线
  • 网站二维码链接怎么做的市场营销产品推广策划方案
  • 网站的基本组成部分有哪些泉州网站seo外包公司
  • 广州市萝岗区做网站设计服务百度统计
  • 自适应网站开发资源南京seo全网营销
  • wordpress 修改发帖时间百度seo整站优化
  • 网络营销导向型企业网站建设特征今日头条新闻手机版
  • 域名解析到网站需要怎么做如何让百度收录自己信息
  • 网站建设的商业目的网站如何做推广
  • 网站更新怎么做免费发广告的软件
  • 忘记网站后台admin密码促销策略