精华内容
下载资源
问答
  • android/build/tools/buildinfo.sh 在此文件中读取ro.build.version.security_patch  而此文件中ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH  所以在android/build$ 搜: grep -rn "PLATFORM_...

     android/build/tools/buildinfo.sh 在此文件中读取ro.build.version.security_patch

     而此文件中ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH
     所以在android/build$ 搜: grep -rn "PLATFORM_SECURITY_PATCH" ./
     得到信息:是在android/build/core/version_defaults.mk中读取的信息;
     PLATFORM_SECURITY_PATCH := 2015-11-01

    展开全文
  • 简介: Android补丁修复框架,自动生成带签名的补丁包 更多:作者提 Bug 标签: Issues MAC 系统无法自动打包补丁,原因可能是路径分隔符问题 使用谷歌 multidex 分包后无法注入代码(开启 multidex 之后,...

    HotFix

    项目地址:AItsuki/HotFix 

    简介: Android 热补丁修复框架,自动生成带签名的补丁包

    更多:作者   提 Bug   

    标签:

     

    Issues

    1. MAC 系统无法自动打包补丁,原因可能是路径分隔符问题
    2. 使用谷歌 multidex 分包后无法注入代码(开启 multidex 之后,jar 包保存路径改变了)
    3. 暂不支持 productFlavors

    以上问题有空再改,最近正在忙其他事情,公司项目也准备重构。 而且此项目主要是科普和学习热补丁技术,有兴趣的可以自行解决上述问题。

    一、HotFix 简介

    一个基于 dex 分包的热补丁框架,目前只支持 gradle 1.5 以上版本 具有以下特性:

    1. 支持混淆
    2. 自动生成补丁包
    3. 加载补丁包时进行签名校验

    项目演示

     

    二、使用方式

    首先在 build.gradle 中有两个 dsl 需要进行配置。

     

    2.1 fixMode

    • fixMode 是在 debug 模式下运行项目的配置,可以控制是否使用 javassist 注入代码,是否自动生成补丁,日常开发的话两个设置成 false 即可
    • 因为注入代码后,自定义控件在 preview 预览的时候会报空指针(找不到 Antilazy.class),所以需要将 debugOn 关掉才能方便预览。

    2.2 fixSignConfig

    这个是配置补丁包的签名文件,需要和 Release 签名打包时使用的一致,否则加载补丁的时候会校验失败,这也是为了安全性考虑,防止恶意注入代码。

    storeFile,storePassword,keyAlias,keyPassword 对应如下

     

    build.gradle 配置完毕后,只需要运行一次 Release 签名打包,然后修改代码,再次运行 debug 打包即可自动生成补丁了。

    三、说明

    1. 在 Release 签名打包的时候会重新生成 hash.txt,如果开启混淆的话还会生成 mapping.txt,自动生成的补丁包是基于这个版本校验而来的。
    2. 在 debug 模式下直接运行或者打包会校验 hash.txt 和 mapping.txt,自动生成补丁包并且为补丁包签名。
    3. 将生成的补丁包复制到 sdcard 根目录,重启应用即可实现热修复。

    需要注意的是,如果在 Release 打包中开启了混淆,那么自动生成补丁的时候也需要将 debug 开启混淆,否则会将整个项目的所有类都打包成补丁包。

    debug 开启混淆方式如下

     

    3.1 关于签名校验

    只有使用 Release 产出的 apk,加载补丁的时候才会进行签名校验。

    如果你手机上安装的是 debug 包,那么不会进行签名校验。

    3.2 关于 android6.0 以上

    补丁包不能从 sdcard 中加载,因为 android6.0 后有运行时权限处理。从 sdcard 中加载只是为了方便测试和演示,一般情况下是建议放在私有目录中。

    展开全文
  • android源码以太网补丁

    2019-04-08 14:21:39
    补丁是从Android源码的层面上在系统设置中添加以太网设置的功能
  • Android App补丁更新

    2015-06-13 15:56:11
    移动互联网主打的就是用户体验和产品的快速迭代,通过用户反馈和用户行为跟踪及时调整产品方向,这样才能持续保持生命...有没有这样一种策略呢,就如windows系统上打补丁一样,通过体积比较小的补丁来完善系统存在的bu

    移动互联网主打的就是用户体验和产品的快速迭代,通过用户反馈和用户行为跟踪及时调整产品方向,这样才能持续保持生命力和创造力。说的接地气点就是,你频繁的升级更新,有时只是修复了几个bug或者微调了下界面,就让用户下载10几兆甚至更大的apk,而且在目前国内这个4G还不是普及的时候,对用户来说是很不友好的。有没有这样一种策略呢,就如windows系统上打补丁一样,通过体积比较小的补丁来完善系统存在的bug或者新功能的实现,如果可以实现的话,用户就再不会苦着脸去更新app了。答案是肯定的,要实现这个功能,需要以下两个步骤。

    一、比对新版本与老版本之间的差异,最好只下载差异的部分

    思路很简单,也非常清晰,那我们就照着这个目标行进。apk本身其实是一个zip压缩包,你改下后缀名,再双击解压就能得到apk内部的编译打包后的文件,图片音频等文件是直接可以可读的,其他的就得通过反编译工具去查看了。所以我们应用的安装文件apk就是一个二进制文件,如何得到两个二进制文件的差异文件---差异包呢?好消息是已经有前人实现了,它的名字bsdiff,一个差异包比较工具,全称是binary diff,二进制差异的意思。通过bsdiff,我们就能得到两个apk的差异包了,下面我会把整理的命令文件打包到代码中上传Github上供大家使用的。bsdiff为我们提供的仅是一组用C实现的代码,需要自己去编译构建,我已经为大家准备了windows、OSX、Linux不同平台下使用的命令。

    由于我的电脑是macbook,执行命令如下

    执行命令之后,得到xx.patch,我们下面要下载的就是这个差异包。根据不同版本之间的差异,相对整个apk来说,差异包的体积会小很多。同时如果你的应用老版本有多个的话,你就需要生成对应的多个差异包。如果要想生成的流程自动化的话,找后台的哥们配合下就能轻松解决。

    二、手机本地下载差异包,再和旧版本apk进行合并,最后合并成新版本apk。

    根据当前版本号,向服务器发起请求,就得下载到对应的差异包。下面就是旧版本apk和patch合并的一步了,由于java本身并没有提供相应的api,我们需要C去帮助实现,然后生成.so包进行调用。相对于生成差异包的bsdiff,也给提供了另一个bspatch,这个就是帮助我们进行文件和平的。如果要在Android中实现这一步,就需要去配置NDK的开发环境了,如果不想的同学可以直接把demo里面的.so文件拿出来用。调用下面的这个方法就可以实现文件的合并

    合并出的apk文件,与最新的安装包并无区别,具有同样的特征值。最后通过Intent进行安装。

    写在最后:有可能有的用户所使用的版本比较老,与最新的apk相差很大的话,还是建议根据生成差异包的大小进行判定是否去直接下载apk进行更新。同时根据不同版本对应不一样的差异包,和后端的小伙伴合作去自动化生成的话,大大减少了生成差异包时间上的浪费。最后如果只是修复关键性bug或者几个新需求的添加,产生的差异包会很小,也会大大的减少了用户的下载时间和流量消耗。

    源码地址:https://github.com/JackCho/AndroidPatchUpdate

    展开全文
  • 1. 基于ARM架构增加Gold-Fish平台,相应增加的目录如下: kernel/arch/arm/mach-goldfish kernel/include/asm-arm/arch-goldfish ... 而要流畅运行Android系统的CPU主频至少要在400MHZ以上,也就是

    1. 基于ARM架构增加Gold-Fish平台,相应增加的目录如下:
    kernel/arch/arm/mach-goldfish
    kernel/include/asm-arm/arch-goldfish
    Gold-Fish平台采用的是ARM926T CPU作为BaseBand处理器, 该CPU主频至少为200MHZ. 而要流畅运行Android系统的CPU主频至少要在400MHZ以上,也就是说如果你要上Android系统,最好是选用基于ARM11及以上平台进行开发。

    2. 增加了yaffs2 FLASH文件系统,增加的目录为:kernel/fs/yaffs2
    实际上,Android包经过编译后生成的system.img和ramdisk.img文件就yaffs2格式的包.

    3. 增加了Android的相关Driver,相应目录为:
    kernel/drivers/android

    主要分为:
    Android IPC系统: Binder
    Android 日志系统: Logger
    Android 电源管理: Power
    Android 闹钟管理: Alarm
    Android 内存控制台: Ram_console
    Android 时钟控制的gpio: Timed_gpio
    4. 增加了switch处理, 相应的目录为:kernel/drivers/switch/
    5. 增加了一种新的共享内存处理方式, 相应增加的文件为:kernel/mm/ashmem.c
    6. 其他为Linux-内核所做的补丁等等,例如BlueTooth,

    另外GoldFish平台相关的驱动文件如下:
    1. 字符输出设备:
    kernel/drivers/char/goldfish_tty.c
    2. 图象显示设备: (Frame Buffer)
    kernel/drivers/video/goldfishfb.c
    3. 键盘输入设备:
    kernel/drivers/input/keyboard/goldfish_events.c
    4. RTC设备: (Real Time Clock)
    kernel/drivers/rtc/rtc-goldfish.c
    5. USB Device设备:
    kernel/drivers/usb/gadget/android_adb.c
    6. SD卡设备
    kernel/drivers/mmc/host/goldfish.c
    7. FLASH设备:
    kernel/drivers/mtd/devices/goldfish_nand.c
    kernel/drivers/mtd/devices/goldfish_nand_reg.h
    8. LED设备:
    kernel/drivers/leds/ledtrig-sleep.c
    9. 电源设备:
    kernel/drivers/power/goldfish_battery.c
    10. 音频设备:
    kernel/arch/arm/mach-goldfish/audio.c
    11. 电源管理:
    kernel/arch/arm/mach-goldfish/pm.c
    12. 时钟管理:
    kernel/arch/arm/mach-goldfish/timer.c


    展开全文
  • 在操作系统补丁可以更新前,上嵌基地 我想开发一些创新的方法来保护智能手机免受攻击,特别是Android设备。  答:在我们回答这个问题前,先简要的介绍下Android移动设备平台有点儿复杂的起源。Android是由Google...
  • 黑莓转攻Android系统之后,仍然保持了对于安全性的高度关注。最近黑莓就发布了一张Android安全更新的推进表,以展示自己的对安全的重视。 在这张表中,分别标识了各手机在Android每月例行安全更新事宜上的落实情况,...
  • Android系统下,一个企业级的软件如果出bug了怎么办,呵呵,线上错误你敢出一个试试,一但出了,就需要修改bug、打包、重新发布,用户也需要更新软件,不管你怎么想,我是很不爽总是更新。那么有没有方法动态的替换...
  • Tinker 常见问题Issue/提问须知在提交issue之前,我们应该先查询是否已经有相关的issue。提交issue时,我们需要写明issue的原因,以及编译或运行过程的日志(加载...手机系统版本:如:Android 5.0 (如是编译异常,则可
  • Android】怎样给系统补丁

    千次阅读 2013-04-22 16:39:07
    2、你可以按照系统的目录结构自己制作刷机补丁文件: 例如,你想在system/app中加入一个常用程序:UC管理器,想要替换字体DroidSansFallback.ttf 步骤如下:先建立文件夹: buding,再在buding文件夹下建立...
  • 本月更新主要包含2020-01-01和2020-01-05两个安全级别,对Android框架、系统、媒体框架、内核组件,以及闭源内容在内的高通组件等进行了共计40处修复。在2020年1月Android安全补丁中,修复的最严重问题就是Android...
  • 3月4日消息,近日谷歌在最新的Android安全公告中称,当前更新的补丁CVE-2020-0069已修复联发科芯片设备的安全漏洞。据了解,联发科曾在2016年左右确认,部分搭载联发科芯片的Android设备存在安全性问题,所涉及的...
  • MultiDex的产生背景当Android系统安装一个应用的时候,有一步是对Dex进行优化,这个过程有一个专门的工具来处理,叫DexOpt。DexOpt的执行过程是在第一次加载Dex文件的时候执行的。这个过程会生成一个ODEX文件,即...
  • 今天,谷歌放出了新的Android系统补丁,主要是修复一些重要的安全漏洞,而在这之前,系统中已经发现了超过40多个漏洞,出现地方也很广泛,比如在媒体框架,内核组件中。本次谷歌推送的Android安全补丁中,修复的最...
  • Android Dex 热补丁更新

    千次阅读 2016-06-16 15:57:24
    简单的概括一下,就是把多个dex文件塞入到app的classloader之中,但是android dex拆包方案中的类是没有重复的,如果classes.dex和classes1.dex中有重复的类,当用到这个重复的类的时候,系统会选择.....
  • <div><h4>异常类型 手机型号 华为mate30. 三星Galaxy S9+...公司所有android10手机均无法安装补丁成功, 其他安卓版本正常.</p><p>该提问来源于开源项目:BuglyDevTeam/Bugly-Android-Demo</p></div>
  • android 添加系统服务

    2016-12-08 17:32:11
    android系统中, 许许多的系统服务都是在系统启动时加载启动的, 如: PowerManager, WifiManager, InputMethodManager, 等等;   注: 本文参考自RK所提供的一部份补丁, 若涉及侵权, 请及时与我联系.   本文...
  • 可以通过应用市场完成 GPU 驱动更新是高通骁龙 865 移动平台的一个重要特性之一,它使得用户无需等待系统更新就可以升级自己手里设备的驱动程序,从而获得有可能的性能以及稳定性提升。目前小米应用商店上架了一款名...
  • 随着Android系统版本的增加,一些结构也有了微妙的变化,本文所描述的DEX文件格式源于Android 4.0源代码中的“dalvik\libdex\DexFile.h”文件所提供的信息。另外,由于本人知识也极有限的,所以,在理解与表述方面...
  • Android系统中编写JNI方法在应用程序框架层提供Java接口访问硬件。 2>然后是framework层  五. 在Android系统的应用程序框架层增加硬件服务接口。 其中修改frameworks/base/services/java/...
  • and补丁包kk3

    2018-08-27 10:18:49
    and补丁包kk3, 老版本的android系统补丁包,请勿随意下载,以免浪费积分。
  • 1、Androd 官网 ...安全补丁程序级别 RQ1A.201205.008.A1 android-11.0.0_r21 Android11 Pixel 4、Pixel 4 XL 2020-12-05 RQ1A.201205.010 android-11.0.0_r20 Android11 Pixel 5、Pixel 4a (5G) 2020-1
  •  在Android系统中增加C可执行程序来访问硬件驱动程序。 贴上来,在external/建立hello文件夹, 1>hello.c文件 #include #include #include #define DEVICE_NAME "/dev/hello" int main(int argc,
  •  其次,介绍了Devkit8000开发板的硬件资源,采用了先将Linux内核移植到Devkit8000开发板上,然后制作Android内核补丁打到Linux内核上的方式,把Android系统移植到了Devkit8000开发板上,具体工作包括制作交叉编译工具链...
  • 今天就来看看Android系统的升级流程。 概述 一般Android升级流程是,由软件发放端推送软件到服务器,然后由服务器向Android设备推送升级包。在Android设备中,一般会有一个系统服务用于检测是否有版本更新,如果有...
  • 打出补丁包并成功上传到bugly补丁包后台,重启app进行补丁升级,下载补丁后合成失败。 2020-06-09 17:02:02.516 16713-16713/com.cxc.apay I/ACWallet: 补丁应用失败 PatchResult: ...
  • 官方的文档地址: Android 8.0以上: https://help.aliyun.com/knowledge_detail/67398.html Android 9.0以上: https://help.aliyun.com/knowledge_detail/141757.html
  • 在avahi官网上下载源码,zip稳定包,但是其不支持Android编译,所以在github上找到了一个avahi的android补丁,patch文件,但是运行时,总是提示运行patch时路径不对,非常郁闷,于是查看patch的使用语法,发现运行的...
  • 1.系统中存在两个以太网卡(或一个4g网卡模拟成以太网卡,再加一个以太网卡) 2.存在两个网卡:一个是eth0,用于访问Internet,另一个是eth1,用于访问局域网

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 437
精华内容 174
关键字:

android系统补丁