当前位置: 网学 > 编程文档 > Android > 正文

android4

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: myeducs.cn 发布时间: 13/03/17

【网学网提醒】:本文主要为网学会员提供android4,希望对需要android4网友有所帮助,学习一下!


    4.Linux内核
    Android的核心系统服务依赖于Linux2.6内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的抽象层。
    开机自动运行程序
    Android实现开机自动运行程序2009-12-3115:01:17.0开机自动运行程序有些时候,应用需要在开机时就自动运行,例如某个自动从网上更新内容的后台service。怎样实现开机自动运行的应用?在撰写本文时,联想到高焕堂先生以“Don''tcallme,I''llcallyouback!”总结Android框架,真是说到点子上了。理解这句话的含义,许多有关Android平台上实现某种功能的问题,都能迎刃而解。
    使用场景:手机开机后,自动运行程序,在屏幕上显示"Hello.Istarted!"字样。
    背景知识:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为android.intent.action.BOOT_COMPLETED。只要在程序中“捕捉”到这个消息,再启动之即可。记住,Android框架说:Don''tcallme,I''llcallyouback。我们要做的是做好接收这个消息的准备,而实现的手段就是实现一个BroadcastReceiver。
    代码解析:
    1、界面Activity:SayHello.java
    packagecom.ghstudio.BootStartDemo;
    importandroid.app.Activity;
    importandroid.os.Bundle;
    importandroid.widget.TextView;
    publicclassSayHelloextendsActivity{
    @Override
    publicvoidonCreate(BundlesavedInstanceState){
    super.onCreate(savedInstanceState);
    TextViewtv=newTextView(this);
    tv.setText("Hello.Istarted!");
    setContentView(tv);
    }
    }
    这段代码很简单,当Activity启动时,创建一个TextView,用它显示"Hello.Istarted!"字样。
    2、接收广播消息:BootBroadcastReceiver.java
    packagecom.ghstudio.BootStartDemo;
    importandroid.content.BroadcastReceiver;
    importandroid.content.Context;
    importandroid.content.Intent;
    publicclassBootBroadcastReceiverextendsBroadcastReceiver{
    staticfinalStringACTION="android.intent.action.BOOT_COMPLETED";
    @Override
    publicvoidonReceive(Contextcontext,Intentintent){
    if(intent.getAction().equals(ACTION)){
    IntentsayHelloIntent=newIntent(context,SayHello.class);
    sayHelloIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    context.startActivity(sayHelloIntent);
    }
    }
    }
    该类派生自BroadcastReceiver,覆载方法onReceive中,检测接收到的Intent是否符合BOOT_COMPLETED,如果符合,则启动SayHello那个Activity。
    3、配置文件:AndroidManifest.xml
    
        package="com.ghstudio.BootStartDemo"
    android:versionCode="1"
    android:versionName="1.0">
    
        android:label="@string/app_name">
    
        nandroid:name="android.intent.action.MAIN"/>
    
    

    
    
    
    
    

    
    
    
    
    
    注意其中粗体字那一部分,该节点向系统注册了一个receiver,子节点intent-filter表示接收android.intent.action.BOOT_COMPLETED消息。不要忘记配置android.permission.RECEIVE_BOOT_COMPLETED权限。
    完成后,编译出apk包,安装到模拟器或手机中。关机,重新开机。
    如果是系统进程的话,需要加入init配置文件来启动,随着linux启动而启动
    注:还有一些关于Activity之间的数据传递与Intent的具体应用、Activity的生命周期等老师的PPT上已经都有了。具体的笔试题目前只有华为有笔试题,并且也只是一般的选择题,其余公司都是一些JAVA的基础题,只会在面试的时候问一些关于Android的题,并且有的公司经常问一些关于底层C库的调用与Android隐式API的题。
    
    
  • 上一篇资讯: AndroidXML布局属性详解
  • 下一篇资讯: Android4.0系统详解
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号