-
2022-04-26 11:07:10
如何实现Android应用开机自启动呢?
实现原理:
Android设备(比如我们的Android手机、Android智能硬件终端......)开机时会发送一条开机广播
:android.intent.action.BOOT_COMPLETED。我们通过监听开机广播来实现。(即:我们写一个广播接收器,接收开机广播,通过Intent跳转应用的入口Activity)
实现步骤:
1、在AndroidManifest.xml中声明权限:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <!-- 接收Android设备开机时发送的开机广播所需的权限 -->
2、自定义实现 Android应用开机自启动的广播接收器:
public class SelfStartReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { //Android设备开机时会发送一条开机广播:"android.intent.action.BOOT_COMPLETED" if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) { Intent splashIntent = new Intent(context, SplashActivity.class); splashIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(splashIntent); } } }
3、在AndroidManifest.xml中静态注册广播:
<receiver android:name=".receiver.SelfStartReceiver" android:enabled="true" android:exported="true"> <intent-filter android:priority="100"> <action android:name="android.intent.action.BOOT_COMPLETED"/> </intent-filter> </receiver>
亲测在Android 7.1.2上可用。
注意事项:
1、针对Andorid4.0之后需先启动一次APP才可收到开机完成的广播,主要目的是防止恶意程序。
2、检查一下Android设备上是不是安装了360等安全助手之类的软件,如果有,请在软件的自启动软件管理中将app设置为允许。
3、查看系统设置里是否自带自启动软件管理的功能 ,如有:将app设置为【允许开机启动】。
4、系统开启了Fast Boot模式(通俗讲就是刷机模式 - 线刷模式),这种模式下系统启动并不会发送BOOT_COMPLETED广播。
5、检查手机是否设置了app安装首选位置是sd卡,据说安装到sd卡的话,因为手机启动成功后(发送了启动完成的广播后)才加载sd卡,所以app接收不到广播。如果是的话,把app安装到内部存储试试。如果不懂得设置的话,那么直接在AndroidManifest.xml文件中设置安装路径,android:installLocation="internalOnly"(声明在manifest根标签下)
更多相关内容 -
c#开发Android应用实战
2012-12-25 17:29:29《C#开发Android应用实战——使用Mono for Android和.NET/C# 全面透彻地讲解Android应用编程知识,分析如何结合使用C#和Mono来编写在Android设备系列上运行的应用程序。在这本由多位专家联袂撰写的必备精品书籍的... -
C#开发Android应用实战(整本扫描版).pdf
2015-05-05 11:11:47C#开发Android应用实战.pdf ,百度云下载链接,上次传失败了,这次补上,本书是 C#开发Android应用实战 整本扫描版 -
Android应用程序输入事件处理机制
2013-10-23 09:42:00在Android应用程序中,有一类特殊的消息,是专门负责与用户进行交互的,它们就是触摸屏和键盘等输入事件。触摸屏和键盘事件是统一由系统输入管理器InputManager进行分发的。也就是说,InputManager负责从硬件接收... -
【Android 逆向】应用安装目录 ( Android 应用的默认安装目录 | 查找 Android 应用的安装目录 | 查询当前...
2021-10-26 11:09:19一、Android 应用的默认安装目录、 二、查找 Android 应用的安装目录、 1、查询当前正在运行的应用包名、 2、根据包名查询应用安装路径、
一、Android 应用的默认安装目录
应用安装在 Android 系统中后 , 普通应用 会安装到 /data/app/ 目录下 ;
如果是系统应用 , 会安装在 /system/app/ 目录下 ;
此外 , 还会在 /data/data/package.name/ 目录下生成该应用的对应目录 , 这是应用的内存存储空间 , 应用拥有该目录下的所有权限 , 存放应用运行时所需的数据 ;
二、查找 Android 应用的安装目录
如果系统是定制的 , 可能应用安装目录不是上述路径 , 这时可以使用下面的方法查找 Android 应用的安装目录 ;
1、查询当前正在运行的应用包名
使用
dumpsys activity top | grep pid
命令 , 查询当前正在运行的应用的包名 ;
命令行输出 :
255|walleye:/system/app # dumpsys activity top | grep pid ACTIVITY com.xunmeng.pinduoduo/.login.LoginActivity 9ca177f pid=19308 ACTIVITY com.google.android.gm/.welcome.WelcomeTourActivity 12cb647 pid=17256 ACTIVITY com.tencent.android.qqdownloader/com.tencent.pangu.module.desktopwin.nonpermission.NonPermissionMainActivity ccab018 pid=3229 ACTIVITY com.tencent.mm/.ui.LauncherUI 5abb31c pid=(not running) ACTIVITY com.qidian.QDReader/.ui.activity.QDReaderActivity 6c25868 pid=23499 ACTIVITY com.google.android.apps.nexuslauncher/.NexusLauncherActivity c848feb pid=3004 walleye:/system/app #
2、根据包名查询应用安装路径
上面查询的正在运行的应用中 , 查询起点中文网的应用包名 ;
ACTIVITY com.qidian.QDReader/.ui.activity.QDReaderActivity 6c25868 pid=23499
其包名是
com.qidian.QDReader
;执行
pm list package -f com.qidian.QDReader
命令 , 查询
com.qidian.QDReader
包名对应应用的安装地址 ;查询结果是
/data/app/com.qidian.QDReader-GTqLCxuMlq6CJtnOVz1LgQ==/base.apk=com.qidian.QDReader
, 等号左边是应用安装地址 , 应用安装地址是/data/app/com.qidian.QDReader-GTqLCxuMlq6CJtnOVz1LgQ==/base.apk
, 等号后面是包名com.qidian.QDReader
;应用的安装目录是
/data/app/com.qidian.QDReader-GTqLCxuMlq6CJtnOVz1LgQ==/
;255|walleye:/system/app # pm list package -f com.qidian.QDReader package:/data/app/com.qidian.QDReader-GTqLCxuMlq6CJtnOVz1LgQ==/base.apk=com.qidian.QDReader walleye:/system/app #
pm list package -f
命令 , 如果不带包名 , 会列出所有的应用的安装地址 , 包括系统应用和用户应用 ; -
Android应用程序结构及运行原理
2022-03-31 08:29:26Android应用程序结构及运行原理Android工程的文件系统结构源程序文件夹src资源文件夹res布局文件夹res/layout值文件夹res/values图片文件夹res/drawable与音乐文件夹res/raw使用扩展.jar包文件夹libs工程配置清单...Android应用程序结构及运行原理
Android工程的文件系统结构
在idea中一个Android的目录结构如下
源程序文件夹src
分类存放Java源程序文件
资源文件夹res
存放xml文件、位图文件、raw(声音)文件
布局文件夹res/layout
每个布局对应一个Activity
值文件夹res/values
其中的strings.xml是最重要的文件,通常存放这布局文件中控件对象的属性值
图片文件夹res/drawable与音乐文件夹res/raw
使用扩展.jar包文件夹libs
工程配置清单文件AndroidManifest.xml
包含了Android系统运行前必须掌握的相关信息,如应用程序名称、图标、应用程序的包名、组件注册信息、授权和运行设备的最低Android版本等
Android应用程序的基本组成
Android应用程序是由组件组成的,组件可以调用相互独立的功能模块。组件可以划分为四类核心组件,即Activity、Service、BroadcastReceiver和ContentProvider。
注意:
- 四大组件中除ContentProvider组件外,都是通过Intent对象激活的
- 四大组件均需要在工程的清单文件中使用标签注册
Activity组件与视图View
Android组件在清单文件中使用标签
<activity>
注册Service组件
Service是Android提供的无用户界面、长时间在后台运行的组件。
Service组件在清单文件中使用标签<service>
注册BroadcastReceiver组件
BroadcastReceiver,即广播接收者,用来接收来自系统或其他应用程序的广播,并做出回应。
BroadcastReceiver组件在清单文件中使用标签<receiver>
注册ContentProvider组件
为了跨进程共享数据,Android提供ContentProvider接口,可以在无须了解数据源、路径的情况下,对共享数据进行查询、添加、删除和更新等操作。
ContentProvider组件在清单文件中使用标签<provider>
注册意图对象Intent
Android应用程序的运行入口
定义一个MainActivity.java为应用的主Activity的代码如下:
<activity android:name="包名.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>
-
Android应用开发,完整扫描版
2014-02-04 08:48:12《Android应用开发》通过丰富而翔实的实例展示了在Android平台下开发手机应用软件所必需的概念和技术。书中不仅对Android应用程序的开发环境和调试方法进行了详细介绍,而且对Android软件开发的一些关键技术和API... -
Android应用案例开发大全 吴亚峰等 PDF扫描版
2014-09-26 12:28:12《Android应用案例开发大全》是以Android手机综合应用程序开发为主题 通过11个典型范例全面且深度地讲解了单机应用 网络应用 商业案例 2D和3D游戏等多个开发领域 全书共分12章 主要以范例集的方式来讲述Android的... -
Android应用程序消息处理机制
2013-10-23 01:22:30Android应用程序与传统的PC应用程序一样,都是消息驱动的。也就是说,在Android应用程序主线程中,所有函数都是在一个消息循环中执行的。Android应用程序其它线程,也可以像主线程一样,拥有消息循环。Android应用... -
Android应用程序开发教程PDF电子书完整版、Android开发学习教程
2011-03-30 22:26:35的 Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ... -
Android应用开发环境搭建
2021-09-06 14:35:49开发Android应用至少需要具备如下开发工具和开发包: Java SE SDK(简称JDK,Java标准开发工具包) Android studio(集成开发工具) Android SDK(Android标准开发工具包) 早期的Android开发大多使用Eclipse,其中...开发Android应用至少需要具备如下开发工具和开发包:
Java SE SDK(简称JDK,Java标准开发工具包)
Android studio(集成开发工具)
Android SDK(Android标准开发工具包)
早期的Android开发大多使用Eclipse,其中安装谷歌提供的ADT插件来进行android开发。Android Studio是谷歌2013年推出的新的Android开发环境,提供了集成开发工具,开发者可以在编写程序的同时看到自己的应用在不同尺寸屏幕中的样子。 随着Android Studio的不断完善和功能的增强,已成为android开发的理想选择。
SDK,Software Development Kit 的缩写,中文即“软件开发工具包”。广义上指辅助开发某一类软件的相关文档、范例和工具的集合。SDK是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合。Java SE SDK(简称JDK,Java标准开发工具包)
给开发者提供的开发工具箱,是给程序开发者用的。它除了包括完整的JRE(Java Runtime Environment),Java运行环境,还包含了其他供开发者使用的工具包。
JDK包含的基本组件包括:
javac :编译器,将源程序转成字节码
jar :打包工具,将相关的类文件打包成一个文件
javadoc :文档生成器,从源码注释中提取文档
jdb – debugger:查错工具
java :运行编译后的java程序(.class后缀的)
appletviewer:小程序浏览器,一种执行HTML文件上的Java小程序的Java浏览器。
Javah:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。
Javap:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。
Jconsole: Java进行系统调试和监控的工具SDK的下载与安装
下载JDK:
http:/www.oracle.com/technetwork/java/javase/downloads.html
在打开的网页中选择自己系统对应的64位或者32位的JDK,2016年下半年基本都是JDK8.0,下载界面如图所示。安装SDK,自定义安装路径
配置环境变量
本次JDK的安装路径为C:\Program Files\Java\jdk1.8.0_77。
步骤如下:
(1)设置环境变量JAVA_HOME(Win7)
右击桌面“计算机”图标一“属性”一“高级系统设置”一“环境变量”。
添加JAVA_HOME环境变量,变量值为C:\Program Files\Java\jdk1.8.0_77。
(2)添加CLASSPATH环境变量,变量值为:
;%JAVA_HOME%lib;%JAVA_HOME%libitools jar;注意前面是“;” 。
(3)补充Path环境变量:
%JAVA_HOME%\bin;
%JAVA_HOME9%\jre\bin;
(4)验证是否配置成功:
打开命令行窗口,输入javac -version
Android studio安装(详细过程可见主页视频资源)
下载网址:
(1)https://www.androiddevtools.cn/
(2)http://www.android-studio.org/
推荐网址1,供用户下载不同版本。
第1个Android项目创建(详细过程可见主页视频资源)
第1个Android应用程序—Hello World,功能是在界面显示“Hello World”字符。
编写Android应用程序需要以下四个步骤:
创建一个新的Android项目
运行应用程序
定义简单的用户界面
启动一个 activity模拟器的创建(详细过程可见主页视频资源)
在安卓的开发过程中,可以一直使用手机来进行开发app的调试和测试,但是在大多数情况下会使用安卓手机模拟器及AVD来进行调试运行和测试,因为AVD可以根据需要设置成不同的安卓版本。不同显示模式不同性能不同厂商的模拟运行环境对app进行多方面的测试,有利于所开发app的兼容性,健壮性和适应性。
应用程序的打包(详细过程可见主页视频资源)
安卓程序开发完成后,如果要发布到互联网上供别人下载安装使用,就需要将自己的程序打包成正式的Android安装包文件(Android Package简称APK),其后缀名为“.apk”
博主最近在学android开发
欢迎大家加我微信交流讨论
-
Android应用开发全程实录(裴佳迪,马超,孙仁贵) PDF扫描版
2014-09-26 12:33:18Android应用开发全程实录 图书简介: 《Android应用开发全程实录》内容上覆盖了用Android开发需要的大部分知识储备。开发者通过本书的学习轻松开发出企业级的Android应用。 《Android应用开发全程实录》以Android... -
Android应用开发实战.pdf
2012-12-18 15:25:17《Android应用开发实战》是一本实践与理论紧密结合的Android应用开发参考书。实践部分以一个完整的大型案例(功能完善的微博客户端)贯穿始终,以迭代的方式详细演示和讲解了该案例的开发全过程,旨在帮助读者迅速... -
C#开发Android应用实战 使用Mono for Android和.NET C# PDF扫描版
2014-01-22 13:51:58C#开发Android应用实战 使用Mono for Android和.NET C# PDF扫描版,希望对你有用处。 一般下载的都7.07MB的,那个只是一个样章,这个是书的全部。 -
修改Android应用名称
2020-07-16 09:57:481. 打开一个Android应用,切换项目结构模式为Project,可以看到如下图所示结构模式,打开app/src/main/res/AndroidManifest.xml 文件,可以看到其应用名称是由字符串"app_name"定义的 项目结构模式为Project,打开... -
使用Eclipse开发Android应用程序
2020-06-30 13:26:25本教程介绍了Eclipse环境中的Android应用程序开发,包括两个示例应用程序的构建。 第一个是基本的入门应用程序,包括构建和调试的所有阶段。 第二个应用程序检查了Android的更复杂功能,包括联系人搜索和Google Maps... -
android应用开发详解 郭宏志编著 pdf格式
2011-01-20 15:47:01第一篇 基础篇 第一章 android概述 第二章 android开发基础 第二篇 技术篇 第三章 android中的资源访问 第四章 android用户界面 第五章 android基本程序单元Activity ...第十八章 android应用案例--无线点餐系统 -
Android Studio实战 快速、高效地构建Android应用
2016-09-06 11:01:24《Android Studio实战 快速、高效地构建Android应用 全面涵盖关于Android Studio及其庞大工具生态系统的内容,包括Git和Gradle:除了介绍Android Studio与Git(用于源代码管理)和Gradle(一款构建及测试工具)的无缝... -
如何利用Qt开发Android应用程序
2021-06-02 15:32:52Qt 工具箱是一个使用广泛的跨平台...Qt最大的优势就是跨平台,一次性开发的Qt应用程序,可以跑Windows、跑linux、跑MAC……如今移动平台Android操作系统如此火爆,Qt当然不能放过对android的支持,对了,还有iphone... -
Android应用测试篇
2021-10-05 10:11:53文章目录——Android应用测试篇前言一、测试覆盖率最大化1. 验证版本并设计冒烟测试2. 自动化测试3. 在模拟器中测试与在设备中测试4. 测试策略:黑盒测试和白盒测试5. 测试移动应用的服务器和服务6. 测试应用的外观... -
android应用后台安装,静默安装的代码实现方法
2012-01-31 14:11:44android应用后台安装,静默安装的代码实现方法。以及编译出来的apk -
《Android应用开发揭秘》源码
2012-02-24 23:18:30杨丰盛,Android应用开发先驱,对Android有深入研究,实战经验极其丰富。精通Java、C、C++等语言,专注于移动通信软件开发,在机顶盒软件开发和MTK平台软件开发方面有非常深厚的积累。2007年获得中国软件行业协会... -
改变Android应用图标
2020-07-16 12:07:37打开一个Android应用,切换项目结构模式为Project,可以看到如下图所示结构模式,打开app/src/main/res/AndroidManifest.xml 文件,可以看到其应用图标保存在mipmap文件下 项目结构模式为Project,可以看到如下图所... -
Android 应用的版本兼容 了解一下(理解 minSdkVersion、targetSdkVersion、maxSdkVersion、...
2021-01-09 17:04:25为了能在所有这些设备上顺利运行,Android 系统在应用到设备上时,必不可少的需要处理与 Android 应用的兼容性问题。这里就牵扯出两个概念:设备兼容性与应用兼容性。 设备兼容性:设备兼容 Android 的前提是它可以... -
【Android 教程系列第 10 篇】史上最全的 Android 应用包名汇总,含主流应用商店包名,持续更新...
2021-09-14 21:27:17史上最全的 Android 应用包名汇总,含主流应用商店包名,持续更新 主流应用商店的包名,系统应用的包名 -
《Android应用开发详解》源码
2011-10-30 21:46:26《Android应用开发详解》源码,完整版,值得看一看。 《Android核心技术和开发详解》各章案例的全部源代码,第一章将要介绍的是Android开发起步的相关知识,首先对Android平台进行简单的介绍,其中包括Android的背景... -
Windows Subsystem for Android (WSA) 下载:在 Windows 11 上运行 Android 应用
2021-10-31 10:25:26在 Beta 频道中为 Windows 预览体验成员宣布 Windows 11 Preview 上的 Android™ 应用程序 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-C6hlCLHI-1635647109396)... -
Android应用系统签名方法
2021-03-24 16:36:401.应用配置sharedUserId 在AndroidManifest.xml文件根节点中加入属性: android:sharedUserId="android.uid.system" 2.找到系统签名文件 platform.x509.pem、platform.pk8 文件位于android系统目录build/... -
5种方式轻松备份Android应用程序和应用程序数据
2021-05-27 02:42:13第2部分:MobileTrans Android App和App数据传输MobileTrans Phone Transfer是一键式手机到手机的简单传输流程,可帮助用户在Android和iOS操作系统之间移动数据。使用MobileTrans的另一种方法是将Android手机备份到... -
Android应用程序UI架构 高清PTT
2013-10-23 01:23:45在Android应用程序中,每一个Activity组件都关联有一个或者若干个窗口,每一个窗口都对应有一个Surface。有了这个Surface之后,应用程序就可以在上面渲染窗口的UI。最终这些已经绘制好了的Surface都会被统一提交给...