Android实现开机自启动某个程序_android studio 开机自启动-程序员宅基地

技术标签: android  开机自启动  Android  

使用场景:手机开机后,自动运行程序,在屏幕上显示”Hello. I started!”字样。

背景知识:当Android手机启动时,会发出一个系统广播,叫做:ACTION_BOOT_COMPLETED,它的字符串表示常量为android.intent.action.BOOT_COMPLETED。所以只要在开始时程序中捕获这个广播消息,一切就好办了。

代码如下:

1、界面代码,

 package com.andy.zhu;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.app.Activity;
import android.content.Intent;
public class MainActivity extends Activity
{

 private Button button_test_service;
 private Intent intent;
 private Button button_stop;
 @Override
 protected void onCreate(Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);

  
  TextView tv =  new TextView(this);
  tv.setText("hello started");


  setContentView(tv);
 }

 
}

2、接受广播消息,所以新建一个类,并继承BroadcastReceiver

 package com.andy.zhu;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.util.Log;
public class BootRestartReceiver extends BroadcastReceiver
{
 private 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));
  {
   Intent intent2 = new Intent(context, MainActivity.class);
   intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   context.startActivity(intent2);
   Log.d("DEBUG", "开机自动服务自动启动...");
   
   //Intent intentService = new Intent();
   //intentService.setClass(context, MyService.class);
   //context.startService(intentService);
   
  }

 }
}

代码都很简单。重写onReceiver方法,实现要实现的功能就行了。

3、配置menifest.xml文件

 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.andy.zhu"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="10" />
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:persistent="true"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.andy.zhu.MainActivity"
            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 -->
        <receiver 
            android:name="com.andy.zhu.BootRestartReceiver"
            >
            <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>  
    
</manifest>

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_31201781/article/details/70175338

智能推荐

sass 自定义函数_sass定义函数-程序员宅基地

文章浏览阅读2.6k次。sass 自定义函数jcLee95 的 CSDN 博客CSDN 主页:https://blog.csdn.net/qq_28550263?spm=1001.2101.3001.5343邮箱 :[email protected]本文地址:https://blog.csdn.net/qq_28550263/article/details/123350343相关文章推荐:Sass 预定义函数总结sass 混入(mixin)目 录1. Sass函数的概念2. Sass函数 与 Sass混_sass定义函数

兰州大学计算机科学考研科目,2019兰州大学计算机考研初试科目、参考书目、报录比汇总...-程序员宅基地

文章浏览阅读1.3k次。本次推荐院校是位于甘肃的兰州大学,作为老牌知名高校,兰州大学近年来因地理位置导致发展不如预期,优质生源匮乏,其中计算机专业报考人数较少,虽然复试线已经低于同一等级的高校,但上线人数依然严重不足。然而仅凭兰州大学的金字招牌,就值得各位同学报考兰州大学。本文由新祥旭徐老师系统介绍兰州大学计算机考研详情,主要有以下几个板块:学院介绍,专业情况介绍,2019录取情况分析,考研科目介绍,专业课参考书目及备考...

NR 5G 网络整体架构及功能总结_5gc下,ng -enb和gnb间为x2接口-程序员宅基地

文章浏览阅读2.9w次,点赞17次,收藏201次。5G网络的整体架构5G的网络架构主要包括5G接入网和5G核心网,其中NG-RAN代表5G 接入网,5GC代表5G核心网。5G接入网(NG-RAN)5G接入网主要包含一下两个节点:  1、gNB: 为5G网络用户提供NR的用户平面和控制平面协议和功能  2、ng-eNB:为4G网络用户提供NR的用户平面和控制平面协议和功能 其中gNB和gNB之间,gNB和ng-eNB之间,ng-eNB..._5gc下,ng -enb和gnb间为x2接口

c语言三个传教士和三个野人,有三个传教士和三个野人过河-Read.DOC-程序员宅基地

文章浏览阅读1.6k次,点赞2次,收藏5次。有三个传教士和三个野人过河-Read传教士和野人渡河问题刘宪国 050422023野人过河问题描述如下: 有三个传教士和三个野人过河,只有一条能装下两个人的船,在河的任何一方或者船上,如果野人的人数大于传教士的人数,那么传教士就会有危险.一、算法分析先来看看问题的初始状态和目标状态,假设分为甲岸和乙岸:初始状态:甲岸,3野人,3传教士; 乙岸,0野人,0传教士; 船停在甲岸,船上有0个人;..._有三个传教士m和三个野人c过河

logback root level logger level 日志级别覆盖?继承?-程序员宅基地

文章浏览阅读7.2k次。1. logback-spring.xml 配置 1 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 2 ... 3 </appender> 4 5 <appender name="ALL" class="ch.qos.logback..._logback root level

Extjs中ajax请求当session失效时自动跳转_exjjs 检测session失效跳到登录-程序员宅基地

文章浏览阅读2.6k次。当session失效时,我们可以通过filter来拦截并重定向到登陆页面,可是请求如果是ajax请求,页面并不会重定向,这是因为ajax返回的是数据,无法返回页面。ajax异步请求不同于其他请求,其在请求头里包含有X-Requested-With:XMLHttpRequest,看下面两张图的区别。我们可以在filter中通过它来判断一个请求是不是异步的,如果是,我们可以返回一个sessionsta_exjjs 检测session失效跳到登录

随便推点

因子分析法之因子旋转-程序员宅基地

文章浏览阅读2.7w次,点赞9次,收藏72次。因子分析法之因子旋转1.因子旋转及其意义建立因子分析模型的目的不仅是要找出公因子以及对变量进行分组,更重要的是要知道每个公因子的意义,以便对实际问题做出科学分析。因子旋转即对因子载荷矩阵A,用一个正交矩阵T右乘A实现对因子载荷矩阵的旋转(一次正交变换即对应坐标系的一次旋转),旋转后因子载荷矩阵结构简化,更容易对公因子进行解释。结构简化就是重新分配每个因子所解释方差的比例,使每个变量仅在一个公因子上有较大的载荷,在其他公因子上的载荷较小,即是使因子载荷矩阵每行或者每列元素的平方值向0与1两极分化。2._因子旋转

【Python】输入一行字符(20 个以上字符),分别统计出其中英文字母、空格、数字和其它字 符的个数。_1.用户从键盘输入一行字符(不少于20个,至少包括数字、英文字母、空格及其他特殊符-程序员宅基地

文章浏览阅读5.3k次,点赞14次,收藏15次。输入一行字符(20 个以上字符),分别统计出其中英文字母、空格、数字和其它字 符的个数。运行结果如下:请输入一个字符串:45se r,d5d~ s58*英文字母=6 个,空格=4 个,数字=5 个,其他=3 个s=input('请输入一个字符串:\n')letters=0space=0digit=0others=0for c in s: if c.isalpha():..._1.用户从键盘输入一行字符(不少于20个,至少包括数字、英文字母、空格及其他特殊符

使用DBeaver连接达梦数据库,接上文安装达梦数据库_达梦连接工具有哪些-程序员宅基地

文章浏览阅读2k次。修改Idea配置文件找到idea的安装目录,在bin文件夹下找到以下两个文件,用记事本或者其他软件打开:idea.exe.vmoptionsidea64.exe.vmoptions_达梦连接工具有哪些

Geometric Camera Calibration_geometric camera calibration using circular contro-程序员宅基地

文章浏览阅读577次。基于圆形标定点的相机几何参数的标定 文章&代码: Geometric camera calibration using circular control points & code 链接http://www.ee.oulu.fi/~jth/calibr/ 作者:竹石 相机标定可以归纳为P−n−PP-n-PP−n−P​​​​(Perspective-n-Point)的问题,即已知三维物点坐标和对应的二维投影坐标,求解相机参数。由于镜头的畸变(径向和切向)带来非线性成像模型,一般求解方_geometric camera calibration using circular control points

c++输出中文乱码怎么办?-程序员宅基地

文章浏览阅读6.6k次,点赞10次,收藏8次。4.在编译时加入-fexec-charset=gbk。1.首先我们打开你的编译器。2.打开左上方的工具。_c++输出中文乱码

基于vue element-ui 的省市区数据结构 省市区三级联动数据_element城市数据-程序员宅基地

文章浏览阅读4.4k次,点赞15次,收藏9次。省市区三级联动数据在网上找了好久,发现要不需要钱,要不就是加密了,要不就要自己写方法(看到代码多就头疼),如果js学的好,可以去这个网站自己写个函数方法,导出来,https://xiangyuecn.github.io/AreaCity-JsSpider-StatsGov/记得给我说一声哦,我也看一下你的方法,谢谢啦打算自己从新构建,构建到第十个的时候,发现还有一千多个市级单位,,,,,,..._element城市数据

推荐文章

热门文章

相关标签