位置: 编程技术 - 正文

使用android hide API(使用Android Go的手机)

编辑:rootadmin
使用androidhide API

推荐整理分享使用android hide API(使用Android Go的手机),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:使用权资产的账务处理,使用灭火器时要对准火焰的什么部位喷射,使用灭火器人要站在上风口还是下风口,使用其他机动车号牌行驶证扣几分,使用驱动器u盘之前需要格式化,使用Android Go的手机,使用灭火器时要对准火焰的什么部位喷射,使用驱动器u盘之前需要格式化,内容如对您有帮助,希望把文章链接给更多的朋友!

Android有两种类型的API是不能经由SDK访问的。

第一种是位于com.android.internal包中的API。我将称之为internalAPI。第二种API类型是一系列被标记为@hide属性的类和方法。从严&#;意义上来讲,这不是一个单一的API,而是一组小的被隐藏的API,但我仍将其假设为一种API,并称之为hiddenAPI。

使用hide具体步骤分为:调用hideapi和获得使用hideAPI权限

第一,调用hideAPI

第一种方法就是使用Java反射机制了,可以利用这种反射机制访问存在访问权限的方法,另一种方法就是或修改其域自己去掉Android源码中的"@hide"标记,然后重新编译生成一个SDK。

1.1反射法,简单,但是运行时间较长

请参考:   在Java中的反射机制,被称为Reflection(大家看到这个单词,第一个想法应该就是去开发文档中搜一下了)。它允许运行中的Java程序对自身进行检查,并能直接操作程序的内部属性或方法。Reflection机制允许程序在正在执行的过程中,利用Reflection APIs取得任何已知名称的类的内部信息,包括:package、 type parameters、 superclass、 implemented interfaces、 inner classes、 outer classes、 fields、 constructors、 methods、 modifiers等,并可以在执行的过程中,动态生成Instances、变更fields内容或唤起methods。

1.2生成新的android.jarwith hide API,复杂,调用hideapi和一般API一样

基于以下事实:当你使用AndroidSDK进行开发的时候,你引用了一个非常重要的jar文件——android.jar。它位于AndroidSDK平台的文件夹中(SDK_DIR/platforms/platform-X/android.jar,其中,X表示API等级)。这个android.jar移掉了com.android.internal包中所有的类,也移掉了所有标记有@hide的类,枚举,字段和方法。

但当你在设备上启动应用程序时,它将加载framework.jar(简单来说,它和android.jar等同),而其未移掉internalAPI和hiddenAPI。(但它对开发者来说,并不能友好地访问)。

请参考: 选择你的目标平台X

2. 创建目标平台X的模拟器

3. 启动模拟器,下载/system/framework/framework.jar

adb pull /system/framework/framework.jar

4. 重命名framework.jar-> framework.zip

5. 从framework.zip中抽取classes.dex

6. 使用dex2jar工具,将其转换成classes.jar

dev2jar classes.dex

7. 重命名classes.jar-> framework-classes.zip

8. 拷贝android.jar–> custom-android.zip

9. 解压custom-android.zip至custom-android文件夹

. 将framework-classes.zip中所有文件拷贝至custom-android文件夹(覆盖存在的文件)

. 压缩custom-android文件夹成original-android.zip

. 重命名original-android.zip->original-android.jar

使用android hide API(使用Android Go的手机)

替换原来的android.jar(注意备份!!)

但是:在android5.0下Android lollipop framework.jarhas noclasses.dex

api,但是有些基础包没有例如java,javax

原先无hideapi的android.jar对比,目录:android-sdk/plaforms/android-xx/android.jar(ubuntu下双击就可以打开jar)

对比两个jar

sdk的android.jar

有javajavax

无hideapi

下载的android-5.0.1_r1.jar

无javajavax

有hideapi

所以不能用下载的android.jar直接替代原有的android.jar

而是把android-5.0.1_r1.jar中需要用的class拖入原有的android.jar中即可

原先用反射实现的方法可以像其他API一样调用!!

第二,获得使用hideAPI权限

无论是反射还是使用自编译的android.jar,只能解决调用隐藏API的问题,而无法越过权限检查。

可能会报类&#;的错误:

”Neither user nor current process hasandroid.permission.LOCATION_HARDWARE“

原因:

This permission is only given to system apps. In order to get thispermission, your app:

must be signed with the system certificates. Thesecertificates are generally available only to the devicemanufacturers.

be installed in /system/apppartition.

解决方案:

order to install an app as a system app on your Androiddevice, your device must be rooted.

Dialog背景色透明效果轻松实现 finalDialogdialog=newDialog(context);dialog.show();dialog.getWindow().setBackgroundDrawable(newColorDrawable(0));dialog.setContentView(R.layout.login);From:

序列化和反序列化技术 序列化和反序列化技术转载:

android内核剖析-----activity启动流程 主要类:ActivityThread(一个应用的启动入口)ActivityServiceManager(负责所有activity的管理)每个应用的启动都会产生一条ActivityThread线程负责维护该应用当ActivityThr

标签: 使用Android Go的手机

本文链接地址:https://www.jiuchutong.com/biancheng/374586.html 转载请保留说明!

上一篇:Android中常用开发工具类—持续更新...(简述android应用的常用开发模式及其优缺点)

下一篇:Dialog背景色透明效果轻松实现(背景透明度设置)

  • 向个人提供居住证明
  • 避税岛是什么
  • 资本公积只能转现金吗
  • 小规模纳税人可以开1%的专票吗
  • 季报利润表本期金额怎么计算
  • 广告费和业务宣传费15%还是30%
  • 小企业会计准则适用于哪些企业
  • 福利企业发放职工集资利息是不是要交个人所得税
  • 发票鉴定管理办法
  • 业务招待费支出扣除标准
  • 抵债资产计提折旧怎么算
  • 逐步测试法计算内含报酬率
  • 资产的名义已使用年限与实际已使用年限的区别与联系
  • 事业单位其他应付款贷方余额表示什么
  • 房屋购买安装电梯可以抵扣吗?
  • 特许权使用费预扣预缴计算方法
  • 定额发票是啥
  • 加权投资年限怎么计算
  • 外商投资企业补税政策
  • 建筑业简易计税进项税可以抵扣吗
  • 高温补贴是政府发放的吗
  • 5000元可以买什么东西
  • 法人变更股权不转让有什么影响么么
  • win10开机启动文件路径
  • 固定资产减值测试时预计其未来现金流量不应考虑的因素
  • 运杂费计入什么科目
  • 公司过节发红包怎么入账
  • 缴纳公积金个人没有扣款怎么回事
  • 其他应收款年末怎么处理
  • 蝴蝶兰的养殖方法和注意事项视频
  • php面向对象编程学生类
  • 所得税分配表分录怎么写
  • php常用语句
  • 分公司?
  • php curl代理
  • 税收优惠会计分录 附加税
  • 人工智能ai软件免费版app
  • php使用oci8扩展连接oracle
  • php 性能优化
  • 苹果2021年在中国不能用了吗
  • phpcms手机端
  • 无形资产摊销怎么计算月摊销额
  • 小企业会计准则和企业会计准则的区别
  • 当月扣缴的社保是上个月的吗
  • js调用自己
  • 费用科目什么意思
  • SQL SERVER使用的是( )逻辑模型
  • 应交税费会计核算
  • 无法收回离职员工合法吗
  • 只有发票没有银行回单怎么做账
  • 单位补扣社保算漏交吗
  • 开银行承兑汇票需要多少保证金
  • 先开发票钱后进怎样做帐?
  • 房租收入怎么确认收入
  • 代扣和代缴的区别
  • 预收账款的借方余额反映的是
  • 水利税费会计分录
  • 管理费怎么扣除
  • Windows下安装爱思助手V8
  • bios如何关闭网卡
  • 注册表删除win7自带游戏
  • win8的运行在哪里打开
  • mac如何整理桌面图标
  • linux修改时间格式
  • 进程cmd.exe
  • win10系统无法运行exe文件
  • profiler.exe - profiler是什么进程 有什么用
  • win8平板触摸键盘没反应
  • win7怎么运行itunes
  • linux查询ipv4
  • nodejs run
  • 如何用python处理pdf
  • opengl中点画线算法
  • nodejs 文档
  • 税务系统 网络发票
  • 国家税务总局班子简历
  • 河北省职称证书电子版
  • 浙江税务网上开票流程图
  • 出租场地的税费
  • 票种核定流程审批时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设