网站首页 > 技术教程 正文
本篇记录时间为2023年7月21号。
android原生开发,真的有好久没弄了, 之前弄的那几年,开发IDE是eclipse,android 系统好像还是2.x版本, 现在都android 13了,时间过得是真的快。
现工作有几个关于android需求,因太久没弄android, 环境也是折磨了我好几天。
需求如下:
需求1: 更换app名字及icon。
需求2: app开机自启动,还要避免用户卸载应用。
环境检查
目标设备是android 10的工控屏, 有root权限,root权限很重要,这跟后面能否安装系统级apk有关。
// 通过adb来检查android机是否有root权限
// 1. adb连接android机,判断电脑是否通过adb连接上了android机,可终端运行下面命令查看,连接上了会有设备显示,如图1
adb devices
// 2. 进入android设备系统终端,终端输入如下命令, 如图2.
adb shell
// 3. 输入su, 来判断是否有root权限
// 输入命令后,此时命令行提示符是 $ 则表示没有 root 权限,是 # 则表示已 root。
su
// 4. 查询设备用户列表。(当我用su切换至root用户后,若不切换,下次进入也是root用户,尴尬的是普通用户名我也忘记了)
ls -l /data/system/users
// 5. 切回普通用户, 这里username要对应你设备上的用户名
su username
更换app名字及icon
// 当前IDE使用的是Android Studio
// 1. 更换app名字
打开AndroidManifest.xml-->检查application-->找到android:label-->找到strings.xml对应的标签更改即可
// 2. 更换icon,如图3.
步1: 选择工程res文件夹,右键新建-->Image Asset
步2: 在打开的Asset Studio里,Source Asset --> Path, 选择一张本地的icon图
步3: 在Scaling->Resize, 调整大小,使之适配
步4: 保存即可。
app开机自启动
Android设备(比如我们的Android手机、Android智能硬件终端......)开机时,会发送一条开机广播:android.intent.action.BOOT_COMPLETED。我们通过监听开机广播来实现。(即:我们写一个广播接收器,接收开机广播,通过Intent跳转应用的入口Activity)
// 1. 在AndroidManifest.xml中声明权限
<!-- 接收Android设备开机时发送的开机广播所需的权限 -->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
// 2. 自定义实现 Android应用开机自启动的广播接收器,源码如下:
// SplashActivity为启动的Activity
public class BootBroadcastReceiver 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=".BootBroadcastReceiver"
android:enabled="true"
android:exported="true">
<intent-filter android:priority="100">
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
adb安装系统级apk
// 1. 把已打包好的apk, 安装至/system/app/即可
adb root
adb remount
adb push xx.apk /system/app/
// 2. 查看是否成功及设置权限
adb shell
cd /system/app/
chmod 777 xx.apk
// 3. 重启android机器,然后看桌面是否有指定的应用,也可尝试卸载,你会发现无卸载按钮了
- 上一篇: ADB常用命令二 adb常用命令详解
- 下一篇: 刷机教程:教你如何打造一台渗透测试手机
猜你喜欢
- 2024-10-04 手机安装magisk获ROOT权限,无须第三方recovery
- 2024-10-04 使用 Frida 来 hack 安卓 APP(一)
- 2024-10-04 刷机教程:教你如何打造一台渗透测试手机
- 2024-10-04 ADB常用命令二 adb常用命令详解
- 2024-10-04 ADB(Android Debug Bridge)... adb android debug bridge drivers
- 2024-10-04 移动应用测试篇(4)——App测试技术(2)
- 2024-10-04 Android ADB 命令学习 安卓adb使用教程
- 2024-10-04 ADB 你想找的命令都在这里 adb 常用命令
- 2024-10-04 无需重置,解决Win10 Mobile 10512安卓应用键盘问题
- 2024-10-04 Fastboot &ADB介绍及命令大全
你 发表评论:
欢迎- 01-11关于Vmware workstation的网络设置
- 01-11使用VMware Workstation虚拟机安装Windows 10详细教程
- 01-11VMware Workstation 17.5.1 Pro for Windows & Linux - 桌面虚拟化软件
- 01-11VMware? Workstation 17 Pro软件中,如何显示 “我的计算机” 选项卡
- 01-11银河麒麟桌面操作系统安装VMware workstation pro
- 01-11VmwareWorkstation17.6安装windows7x64虚拟机后安装vmtools
- 01-11发布VMware Workstation Pro 17.0稳定版
- 01-11VMware Workstation安装ESXi 7安装篇
- 最近发表
-
- 关于Vmware workstation的网络设置
- 使用VMware Workstation虚拟机安装Windows 10详细教程
- VMware Workstation 17.5.1 Pro for Windows & Linux - 桌面虚拟化软件
- VMware? Workstation 17 Pro软件中,如何显示 “我的计算机” 选项卡
- 银河麒麟桌面操作系统安装VMware workstation pro
- VmwareWorkstation17.6安装windows7x64虚拟机后安装vmtools
- 发布VMware Workstation Pro 17.0稳定版
- VMware Workstation安装ESXi 7安装篇
- 如何安装虚拟机(vmware workstation)
- VMware Workstation之网络配置
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)