`
veryEdu
  • 浏览: 17692 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

android开机启动服务v1.0

 
阅读更多
这是个很简单的过程,这个不像pc机得开机启动,要有精确的内存地址,这里所谓的简单是跟pc机得开机启动相比。android系统的宗旨说的是,不要来找我,我会来找你。
  Activity好像是应用程序的眼睛,用眼神与用户交流而用户则用手指头告诉Activity我想要什么。BroadcastReceiver好比android程序的耳朵,接受来自各方的Intent。Service好比android应用程序的手,正确完成耳朵接收到得消息,最后,我 来 组 成 头 部。虽然本人只对Activity是眼睛这句话有深刻的理解,剩下两句没有第一句感觉那么精辟,但是直觉三句话都很精辟所以从书上抄下来了。
  过程是这样的,当所有的android系统服务启动完成以后,会像发传单一样像外面散布消息,这个过程就是广播,我们需要做的就是去捕捉这个系统启动完成的消息,捕捉到这个消息以后,该启动Activity就启动Activity,该启动服务就启动服务,最好的办法就是实践。
  为了更好的理解这个过程,先按部就班的开始,以后玩熟练了想横着玩就横着玩想竖着玩就竖着玩。
  创建好了工程项目之后,定义一个广播类,继承自BroadcastReceiver,这个类得作用就是捕捉到系统发出的消息以后做的事情代码都写在这个类里面,捕捉系统消息只需只需在AndroidManifest.xml文件中添加两个元素就可以。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"      
    package="com.fly" android:versionCode="1" android:versionName="1.0">      
    <application android:icon="@drawable/icon" android:label="@string/app_name">      
        <activity android:name=".BootSayHello" android:label="@string/app_name">      
            <intent-filter>      
                <action android:name="android.intent.action.MAIN" />      
                <category android:name="android.intent.category.LAUNCHER" />      
            </intent-filter>      
        </activity>      
        <receiver android:name=".BootReceiver">      
            <intent-filter>      
                <action android:name="android.intent.action.BOOT_COMPLETED" />      
            </intent-filter>      
        </receiver>      
    </application>      
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>      
    <uses-sdk android:minSdkVersion="7" />      
</manifest>
  

这是全部的xml文件,intent-filter用于过滤需要捕捉什么类型的系统消息,<receiver android:name=".BootReceiver">  这句是自己定义的广播类得类名,最后,还要取得权限允许捕捉系统消息<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission> 这句话就这个意思。
  再回到刚才定义的继承自BroadcastReceiver类:
 public class BootBroadcastReceiver extends BroadcastReceiver {      
   public static final String ACTION = "android.intent.action.BOOT_COMPLETED";   
       
    @Override      
    public void onReceive(Context context, Intent intent) {   
           
        // TODO Auto-generated method stub      
        if (intent.getAction().equals(ACTION)) {    
            Log.d("TAG","ok");   
             
        }      
    }      
}     


if条件里面:如果接收到的消息是我们刚才在xml文件中定义的消息,那么就打印"ok",这两个步骤做完了,就可以启动模拟器测试了。这里为了便于扩展,所以只打印“ok”。
分享到:
评论

相关推荐

    展锐Android11.0开机启动流程介绍V1.0-nowatermark

    Android 11.0 开机启动流程介绍 本文档对 Android 11.0 平台开机启动流程进行了详细的介绍,涵盖了 Android 架构图、系统启动流程、init 启动流程、Zygote 启动流程、System Server 启动流程等关键部分。 Android ...

    Android中实现开机自动启动服务(service)实例

    接下来,为了实现开机启动服务,我们需要创建一个BroadcastReceiver,即`ServiceReceiver`,该接收器会监听`ACTION_BOOT_COMPLETED`广播,当系统完成启动时,它会启动我们的服务: ```java package hev.socks5; ...

    Android 11.0 添加以太网设置

    android

    Android11.0最新Framework解析

    Android11.0 系统分析 Android11.0 启动分析 Android11.0 最新Framework解析 Android11.0 Binder通信原理

    382479234248551华为ec6108v9a刷纯净版v1.0.zip

    标题 "382479234248551华为ec6108v9a刷纯净版v1.0.zip" 暗示这是一个针对华为EC6108V9A设备的固件升级包,版本号为v1.0,并且强调了“纯净版”,意味着该版本可能去除了不必要的第三方应用和服务,旨在提供一个无...

    华为手机线刷工具_v2.1.rar

    3. **无法开机**:刷机后手机无法正常启动,可能是固件不匹配或刷机过程中出错,此时需寻求专业帮助或再次尝试刷机。 总之,华为手机线刷工具_v2.1是华为用户进行系统维护和个性化定制的重要工具,但操作时务必谨慎...

    安卓调谐器 v1.0.1.zip

     - 查看并管理开机启动项目、设置自定义程序开机自启  - 支持最大4*6面板的专家模式,便于打开想要的功能  - 开启/关闭 APN、 蓝牙发现、 GPS 和 WiFi本地化  - 可测试和调整SD卡读取速度,支持内存详细分析 ...

    GenY-DualBOOT

    “Gen.Y DualBOOT v1.0.5.0-CAB”是软件的实际安装文件,格式为CAB,这是Windows Mobile设备上常见的安装包格式。 在实际使用中,用户可能需要先备份重要的数据,因为安装新的操作系统可能会覆盖或影响现有的设置。...

    adb1.0.26包含fastboot.exe

    有的设备,比如小米 5S + MIUI 8.0 + Android 6.0.1 MXB48T,可能在第 5 步之前需要重启 adbd 服务,在设备的终端模拟器上运行: restart adbd 如果 restart 无效,尝试以下命令: start adbd stop adbd 应用管理 ...

    泛泰A850刷机软件

    2. **下载刷机工具**:在这个案例中,提供的文件名“TWRP_v2.4.1.0_CN_IM850”是Team Win Recovery Project(TWRP)的一个版本,这是一个非常流行的第三方恢复程序,用于安装新的系统映像。TWRP提供了图形化的用户...

    计步器的实现

    android计步器的实现,自定义的一个弧形进度条,记步通过手机的传感器来实现,也就是说不支持传感器的机子(应该很老的了吧)就没有效果。看看效果图: 这里写图片描述这里写图片描述 自定义View public class ...

    三星 S5830 简单救砖教程

    ops选择cooper_v1.0.ops,PDA选择S5830-PDA.tar,PHONE选择S5830—phone.tar,CSC选择S5830-csc.tar。点击"start"按钮,开始刷机过程。这个过程可能需要几分钟的时间,期间请不要断开手机与电脑的连接。 当Odin软件...

Global site tag (gtag.js) - Google Analytics