位置: 编程技术 - 正文

使用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背景色透明效果轻松实现(背景透明度设置)

  • 个人所得税应如何缴纳
  • 利息收入需要缴纳企业所得税吗
  • 流转税包括哪些税种2022
  • 评估入账几种情况
  • 股东出售子公司股权的会计处理?
  • 小规模纳税季收入怎么算
  • 金税盘可以用安卓的线吗
  • 付款给对方的会计分录
  • 库存商品暂估后怎么结转
  • 酒店收取的赔偿费是什么
  • 营改增后还有营业费用吗
  • 筹建期结转损益吗
  • 记账凭证是否要记账
  • 三证合一号码是纳税人识别号吗
  • 红字增值税专用发票信息表能作废吗
  • 个税累计预缴税额税率表是年还是月
  • 装卸增值税税率最新的
  • 办理核定企业所需资料
  • 记账公司如何平衡收入成本费用?
  • 公司终止的时间是进行注销登记生效后
  • 业务奖金激励制度
  • 税务局不备案可以吗
  • window10 怎么避免弹窗广告
  • 怎么清除更新记录
  • bios升级失败后如何恢复
  • 农作物种植销售
  • 饭店开业请客说什么
  • DxDebugService.exe是什么进程 DxDebugService进程安全吗
  • 预付款多长时间
  • 一般纳税人购进农产品如何抵扣进项税额
  • avgserv9.exe是什么进程 avgserv9进程的详细介绍
  • codeigniter 教程
  • 营改增后甲供材的账务处理
  • 技术转让费会计处理
  • 解除劳动合同后需要把合同拿回来吗
  • 什么是冲帐?怎么个冲法?
  • 破产清算子公司
  • 员工报销电话费缴纳个税
  • 2021年车辆检测
  • php怎么获取post数据
  • 公司车辆退保进哪个科目
  • sqlcode错误码100
  • 业务招待费汇算清缴怎么填表
  • 假退库会计分录
  • 公司汽车转卖给个人税率
  • 出差自己开车去开会怎么报销交通费
  • powerdesigner生成pdm
  • 预付房租摊销从哪月算起
  • 回购股票不注销如何发可转债
  • 注销退税后又补税了
  • 购买土地支付的印花税账务处理
  • 公司费用分摊给各部门
  • 房地产经纪公司排名
  • 赠送给客户的产品怎么做账
  • 哪些收入不需要开票
  • 支付个人运费没有发票怎么办
  • sqlserver1053怎么解决
  • mysql 5.7.17 winx64安装配置图文教程
  • Windows Server 2008中审核和符合性
  • Linux系统磁盘分配
  • 无windows什么意思
  • linux快速查找历史命令
  • ubuntu设置在哪里
  • vm15虚拟机安装
  • 查看win8.1版本
  • win10 20h2 v2
  • win 8系统怎么样
  • Javascript HTML5 Canvas实现的一个画板
  • shell脚本字符串换行
  • 中国现在很多网站
  • css基础知识教程
  • 项目总结之触摸问题分析
  • bootstrap步骤
  • jquery form serialize
  • recycleview使用
  • js原生dialog
  • 四川省税务局2020年4号
  • 怎么查询企业的联系方式
  • 税控系统技术维护费抵税怎么申报
  • 怎么查询地方规划用地
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设