zoukankan      html  css  js  c++  java
  • Android——开机启动功能(Service和BroadcastReceiver)


    BroadcastReceiver(广播接收器):发出广播让服务器去接收
    BootReceiver.java
    package com.example.chenshuai.test321;
    
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.util.Log;
    
    public class BootReceiver extends BroadcastReceiver {
        public BootReceiver() {
    
            Log.e("TAG","构造开机完成广播接收器");
        }
    
        @Override
        public void onReceive(Context context, Intent intent) {
            // TODO: This method is called when the BroadcastReceiver is receiving
            // an Intent broadcast.
            //throw new UnsupportedOperationException("Not yet implemented");
    
            //启动服务
            context.startService(new Intent(context,BootService.class));
    
            Log.e("TAG", "广播接收器自动启动Service");
    
    
        }
    }
    Service:接收广播传过来的意图
    BootService.java
    package com.example.chenshuai.test321;
    
    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.util.Log;
    
    public class BootService extends Service {
        public BootService() {
        }
    
        @Override
        public IBinder onBind(Intent intent) {
            // TODO: Return the communication channel to the service.
            //throw new UnsupportedOperationException("Not yet implemented");
    
            return null;
        }
    
        @Override
        public void onCreate() {
            super.onCreate();
    
            Log.e("TAG","服务自动启动了");
        }
    }

    在manifest.xml中调至相同频率/同时设置权限

    <!--接收开机完成的广播权限-->
        <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
    
    
     <service
                android:name=".BootService"
                android:enabled="true"
                android:exported="true" />
    
            <receiver
                android:name=".BootReceiver"
                android:enabled="true"
                android:exported="true">
                <intent-filter>
                    <action android:name="android.intent.action.BOOT_COMPLETED"/>
                </intent-filter>
            </receiver>
     
  • 相关阅读:
    刷过算法题汇总
    List
    PHP+JQUEY+AJAX实现分页
    关于响应式布局
    bootscript/javascript组件
    关于H5框架之Bootstrap的小知识
    SEO优化---学会建立高转化率的网站关键词库
    jQuery Mobile学习笔记
    ANGULAR $HTTP请求
    css3 transition
  • 原文地址:https://www.cnblogs.com/Chenshuai7/p/5434868.html
Copyright © 2011-2022 走看看