找回密码
 注册
关于网站域名变更的通知
查看: 353|回复: 1
打印 上一主题 下一主题

iMX6常见 Android系统问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
 楼主| 发表于 2023-8-29 10:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本文以飞凌嵌入式OKMX6Q/DL平台为基础讲解,其它iMX6 平台可参考使用,通过本文您可以了解iMX6 Android系统下一些问题的处理思路,希望可以协助客户加速产品的研发速度。
第一章 Android4.4屏幕竖屏
修改Android源码(Android源码需要整体编译一遍以后才可以)
vim  out/target/product/okmx6qd_c/root/init.rc
添加红框部分,重新编译烧写即可
7 y7 e, a% z! p) N: g+ O; j  a; j
注:1.编译的时候不要make clean;
2.若没有这个路径需要先编译再修改然后再增量编译。
" K7 I+ V/ }8 A. P/ ]  Z+ R  i
第二章 开机屏幕不锁定
有部分客户想要系统启动后屏幕默认不锁定,可以参考以下方法修改后重新编译镜像后,将新编译的镜像烧写到imx6[color=inherit !important]开发板上:
修改/frameworks/base/packages/SettingsProvider/res/values/defaults.xml文件
注:红色字体为改动部分
<string name="def_unlock_sound" translatable="false">/system/media/audio/ui/Unlock.ogg</string>
<string name="def_wireless_charging_started_sound" translatable="false">/system/media/audio/ui/WirelessChargingStarted.ogg</string>
去掉<bool name="def_lockscreen_disabled">false</bool>
添加<bool name="def_lockscreen_disabled">true</bool>
     <bool name="def_device_provisioned">false</bool>
     <integer name="def_dock_audio_media_enabled">1</integer>

& m* P5 D0 I( R/ Z+ t* i1 h第三章 获得root权限
如果想要在android下获取root权限,可以参考以下方法:
1.用附件su文件替换out/target/product/okmx6qd_c/system/xbin/下的su文件,再将system/extras/su/Android.mk文件改为system/extras/su/Android.txt
2.在init.rc增加root守护进程,该路径为device/fsl/okmx6qd_c/init.rc,增加如下内容:
#add for root
on property:sys.boot_completed=1
su --daemon
#end
注意:
1、root权限是对所有apk都开放没有限制的
2、编译前不要make clean, su 文件在文件夹中

4 B  q5 t" k$ Q; ?6 v. `4 Y7 m第四章 Andriod App获得签名
如果客户自己在做好Android应用后,安装不到iMX6开发板上,可以通过以下设置system权限的方法试一试。
可以看一下eclipse中调试信息如下:
Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
这是因为APP的源码中的AndroidManifest.xml文件中设置了system权限,如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="forlinx.example.app"
android:versionName="1.0"
android:versionCode="1"
android:sharedUserId="android.uid.system" /*设置了system权限*/
(自己开发的APP也可以依此手法设置system权限)
设置了system权限后编译出的APP需要进行系统的签名才能正常的安装运行。

2 z5 ^: n% t5 N) e
方法一:
1、修改Android.mk文件,加入LOCAL_CERTIFICATE := platform这一行
2、使用make命令来编译,生成的apk就可以在iMX6开发板中运行了
这种也是我们源码中的APP采用的方法。

, C1 p) j3 c7 [7 u
方法二:
这一种也完成了测试,测试使用的是CanTest的源码。
1、使用eclipse编译出对应apk文件ForlinxActivity.apk,但是这个apk文件是不能用的。
2、使用SignApk.jar签名工具对该apk进行签名
首先在Android源码中拷贝出platform.pk8、platform.x509.pem 和Signapk三个文件,然后再把编译出的apk文件拷贝到同一级目录下。
打开Windows的cmd.exe,然后切换到apk所在的目录,输入以下命令:
signapk.jar  platform.x509.pem platform.pk8 ForlinxActivity.apk new.apk
执行后new.apk即为签名后的文件,这个new.apk就可以安装到开发板上了。
. \3 l7 x4 c% R3 p
适用范围
本文主要适用于飞凌OKMX6DL/Q平台Android4.4操作系统,其他平台也可以参考,但是不同平台之间会存在差异,需客户自行修改以适应自己的使用,由于水平有限仅供参考使用。

3 X1 j/ Q. V1 n$ c  Q

该用户从未签到

2#
发表于 2023-8-29 14:42 | 只看该作者
有详细的学习资料吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-20 13:57 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表