RikkaW
ONLINE

RikkaW

V2EX 第 281077 号会员,加入于 2018-01-09 13:13:02 +08:00
今日活跃度排名 5338
RikkaW 最近回复了
Android 11 的变化只针对 target API 30 的应用。

根据以往经验 Google Play 会在新系统发布的一年后提升 target API 的要求,也就是再过一年多一般人就能享受到一部分好转。为什么是一部分呢,因为各家系统自带的、不上架 Google Play 的、不更新的依然会群魔乱舞(
35 天前
回复了 hangjiao 创建的主题 Android 求助贴: Android10 后台持续定位问题
两个不痛不痒小建议:
1. getprop 可以用 android.os.SystemProperties#get 替代(避免使用慢到爆炸的 su ),反射或者在单独的 module 中建立 stub 类再 compileOnly 都可以( android.os.SystemProperties#get 不是不可以使用的 hidden api )
2. 里面使用的 ShellUtils 看起来是每次都开一个新的 su 进程,又慢又浪费,推荐使用 topjohnwu/libsu (会共用一个进程)
真的强制了用户反而会不开心,因为「让存储分开但是应用的行为不受影响」几乎是一件不可能的事情(

在 Android 10 DP2 的确「强制」了,但是旧应用怎么办呢,只能靠奇奇怪怪的让旧应用们「能用」(跟 Rikka 发明差不多,核心靠挂载,辅以各种特技)。DP2 的方案甚至还包括了「媒体存储返回假路径然后 hook IO 函数们在里面帮你用 content provider 」这样过于夸张的特技。但是,特技满天飞,还是有应用会坏掉。大部分的用户只会因为应用坏了而大叫,不会关心分什么区存储。

所以,从 Android 10 DP3 开始,Google 的方案就从「尝试改变老应用行为」变为「行为跟没存储权限几乎一致,靠 Google Play 对 target API 限制来缓步强制应用们适配」。( Android 11 最新的 beta 又加入了又给 sdcard 来一层 fuse,在里面悄咪咪变成用媒体存储,为了让没有脑子的人开发人开心真的是操碎了心)

觉得没什么好抱怨的,只在两个版本的系统就尝试了至少两种完全不同的方案并且真的确定已经是够快的了(
49 天前
回复了 MePride 创建的主题 Android 自己的个人 App 被破解了应该怎么办?
核心就是把验证跟干活的部分绑一起写成原生库,怎么做可以随便发挥想象力

顺带一提,签名验证可以做成不走系统 API 直接读 apk 文件的(如何读签名,参考 https://source.android.com/security/apksigning/v2 ),也绑在自己的 native 库里给破解人增加难度

另外,既然是个人作品就别用那些脏脏的奇奇怪怪的加固的东西了(
啊 看错(

proguard-rules.pro 变成现场生成的,在 gradle 脚本里大概实现这样的逻辑:
读取 proguard-rules.pro ,加入 printusage 并写到另外的文件,将 proguardFiles 设为这个另外的文件

或许可以(
自己什么都不做的情况下本来就是分开的
问题里有个“等”,发出 sendfile 也是系统调用的声音,只要一行就好了(逃跑
91 天前
回复了 acess 创建的主题 Android Android 的多用户支持搞得我有点晕了
@acess 扯这么多还不是因为用 adb 安装时没有指定 user,所以脑内没有被安装到了所有用户的概念。正常的安装只会安装到一个用户,卸载时也是从一个用户卸载是符合逻辑的。
另外 apk 只存在一份,不同用户不能拥有不同的 apk 。这么做有一定的道理,因为有些东西是能跨用户工作的(
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2439 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 08:34 · PVG 16:34 · LAX 01:34 · JFK 04:34
♥ Do have faith in what you're doing.