在我们进行Android系统app开发时,我们常常会苦恼于:不能在AndroidStudio中调用系统定制API

不能通过AndroidStudio直接运行app

那么要解决这两个问题,我们需要做些准备:

-通过系统编译带有定制API的JAR包

-使AndroidStudio引用相应JAR包

-获取系统签名证书

-使AndroidStudio引用签名证书生成app获取定制API的JAR包以framework.jar为例(如果编译生成SDK则可以不需要这一步)

进入/frameworks/base执行mm命令,编译生成framework.jar

进入/out/target/common/obj/

JAVA_LIBRARIES/framework_intermediates

获取classes-full-debug.jar引用framework.jar打开AndroidStudio,进入Project Structure将jar包放到libs目录下,右击jar选择Add As Library

打开Project Structure来设置引入的jar包属性,使jar参与编译,但是不打入到apk中

如果是AndroidStudio2.3.3则设置引入的jar为Provided

如果是AndroidsTudio3.0的则设置引入的jar为Compile only

修改整个项目下的build.gradle文件,在allprojects节点下添加gradle.projectsEvaluated {

tasks.withType(JavaCompile) {

options.compilerArgs.add('-Xbootclasspath/p:/Users/mac/Documents/MyApplication/test_appops/libs/classes-full-debug.jar')

}

}

Xbootclasspath/p表示编译时引用该路径下的jar包

修改该工程下的iml文件,将我们的jar包移动到SDK前面获取系统签名证书需要使用工具keytool-importkeypair来生成app的签名证书下载地址

将其zip包下载下来,可以得到脚本keytool-importkeypair

在linux环境下使用chmod 777 keytool-importkeypair,赋予脚本权限

进入目录**/build/target/product/security**,获取platform.pk8、platform.x509.pem系统签名需要的文件

执行命令

./keytool-importkeypair -k system_app_debug.keystore -p android -pk8 platform.pk8 -cert platform.x509.pem -alias platform

从而得到app的系统签名证书

system_app_debug.keystore

别名alias为platform,密码android使AndroidStudio引用签名证书将system_app_debug.keystore放入工程目录下

修改当前工程下的build.gradle文件,在android节点下添加signingConfigs {

release {

storeFile file("Users/mac/Documents/MyApplication/test_appops/system_app_debug.keystore")

storePassword 'android'

keyAlias 'platform'

keyPassword 'android'

}

debug {

storeFile file("Users/mac/Documents/MyApplication/test_appops/system_app_debug.keystore")

storePassword 'android'

keyAlias 'platform'

keyPassword 'android'

}

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

signingConfig signingConfigs.release        }

}

好了这样就可以直接运行啦~~~ps:如果引入的jar运行错误,要注意编译环境的jdk与AndroidStudio的jdk对应;如果还不行(我是在Android7.1源码环境、OpenJdk1.8编译),则可以尝试安装Android Studio3.0

下图是调用系统hide接口可编译情况

Android FAE工程师要求,使用AndroidStudio进行系统应用开发相关推荐

  1. 最新《Android车载系统应用开发指南 》,Android工程师的新赛道

    2019年,中国首个外商独资的整车制造项目,"上海特斯拉超级工厂"开工了.作为世界上最大汽车生产和销售国,特斯拉的热销立马就引发了一场鲶鱼效应,国内外的汽车制造商纷纷开始布局智能化 ...

  2. androidstudio使用mac字体_给android studio安装新字体,如mac系统的monaco字体

    程序猿最少不了的就是敲代码,那么一款好看的字体能让程序员敲起代码来更舒心,甚至能带来更好的灵感和思路,现在android开发工具已经基本上从eclipse过渡到android studio了,如果我们 ...

  3. linux mipi驱动分析_寒武纪社招内推数字IC设计、DSI驱动、软件架构、产品经理、芯片架构、工具链开发、深度学习、FAE工程师...

    点击上方蓝字关注我吧! 为什么内推更靠谱?内推是基于人脉关系链的推荐,其背后有一定的信用背书,靠谱的人推荐的人相对也会比较靠谱,所以企业一般职位都是从内部开始分享的,相较于自己海投简历,内推的效率和成 ...

  4. 下列不属于android布局的是( ),Android软件工程师笔试题(全选择题)【0-1年经验】...

    Android软件工程师笔试题,全选择题,适合0-1年经验的面试者. Android软件工程师笔试题 单选题(共35题) 1.退出 activity 对一些资源以及状态的操作保存,可以在生命周期的哪个 ...

  5. android软件开发考试,Android软件工程师笔试题(全选择题)【0-1年经验】

    Android软件工程师笔试题 单选题(共35题) 1.退出activity 对一些资源以及状态的操作保存,可以在生命周期的哪个函数中进行 A.onPause() B.onCreate() C.onR ...

  6. android 5.0状态栏下载地址,Android沉浸式状态栏(5.0以上系统)

    Android沉浸式状态栏(5.0以上系统) 沉浸式状态栏可以分为两种: 1.直接给状态栏设置颜色 (如下图:) 这里写图片描述 java代码形式: if (Build.VERSION.SDK_INT ...

  7. linux/android驱动工程师面试相关内容总结

    理论的东西不常用时就会慢慢的被遗忘,但是找工作就是一个如何让别人相信自己的过程,理论知识就是一个非常重要的途径. 一次次机会在错失,每次想找工作时,刷一下简历就去面试了,一次次因为理论被鄙视,也该长长 ...

  8. Android初级工程师面试题答案——Android题型

    面试题答案(按照以上往下的顺序依次排序): Android类型题目: 1.Android有几种布局? 参考网站:https://blog.csdn.net/shenggaofei/article/de ...

  9. android的自我评价,2021年ANDROID软件工程师的自我评价

    <2021年ANDROID软件工程师的自我评价>由会员分享,可在线阅读,更多相关<2021年ANDROID软件工程师的自我评价(4页珍藏版)>请在人人文库网上搜索. 1.and ...

最新文章

  1. 清华优秀毕业生放弃留学上热搜!计算机系前10名中9人留校深造
  2. Leangoo产品白皮书
  3. 马尔科夫链蒙特卡洛算法(python)
  4. 在离线环境中安装Visual Stuido 2017
  5. 微信二维码支付快速入门
  6. php网站制作商品结算怎么做,一种以让产品、信息快速同步多网站销售并结算的技术的制作方法...
  7. DJ轮回舞曲网下载教程
  8. 就想问问你们,这种女朋友从哪里来的?
  9. [HAOI2015]T2
  10. qt中在QMultiMap中删除自定义数据类的元素
  11. (27)FPGA译码器设计(第6天)
  12. 【cocos2d-x 手游研发小技巧(4)与Android混编实现换“头像图片”】
  13. 新概念英语第三册51-60课(转)
  14. 基于微信小程序的童装(服装)商城的设计与实现
  15. ASF文件格式之Objects与Guid总结
  16. 干涉仪测向原理matlab,干涉仪测向原理.pdf
  17. ubuntu下的截图和图像编辑软件推荐
  18. 基于Labview平台的滚动轴承故障分析与噪声评价系统
  19. 星际之门SG1第一至十季/全集Stargate SG-1迅雷下载
  20. 应用宝市场 认领 app ,详细打包签名步骤解析

热门文章

  1. 不搞虚的!快速把你拉入Docker 的门里 | 原力计划
  2. Java 14 来了!
  3. OPPO 回应“不务正业”生产口罩;旧款 iPhone 降速被罚 2500 万欧元;Angular 9.0.0 发布| 极客头条...
  4. 英特尔首推异构编程神器 oneAPI,可让程序员少加班!
  5. 软件核心研发迎来又一春!
  6. 物联网正在面临的 9 大安全挑战!
  7. 今日七夕!不取标题,只想娶你
  8. 大数据“重磅炸弹”:实时计算框架 Flink
  9. 数据结构与算法之链式栈
  10. JAVA day06 酒店管理系统