Chrome私有网络访问限制草案已停止推进,更换为本地网络访问提示。
私有网络访问限制:在连接时进行 CORS 预检,由本地服务器判断来源是否合法。
本地网络访问提示:弹出权限通知等待用户批准。
https://localmess.github.io/
am start -a android.intent.action.INSTALL_PACKAGE package:包名
可以安装其它用户上已经安装的应用,可惜私密空间没有这样做,安装按钮只允许从play商店安装
Seang Chau:
We're seeing some speculation that AOSP is being discontinued. To be clear, AOSP is NOT going away. AOSP was built on the foundation of being an open platform for device implementations, SoC vendors, and instruction set architectures.
AOSP needs a reference target that is flexible, configurable, and affordable – independent of any particular hardware, including those from Google. For years, developers have been building Cuttlefish (available on GitHub as the reference device for AOSP) and GSI targets from source. We continue to make those available for testing and development purposes.
https://twitter.com/seangchau/status/1933029688202703062
https://rys.io/en/179.html
telegram通信协议具有明文账号标识符,监控网络流量可以跟踪来自特定账号的活动情况
注意,支持腾讯 soter 指纹识别的国产设备除外。
根据文档,设备根密钥attk每台设备唯一,其公钥存储在腾讯TAM服务器。开发者可以获取该证书及其签署的ask子证书上传腾讯服务器验证设备真实性,因此该证书是可信持久设备唯一ID。
目前最新代码在 https://cs.android.com/android/platform/superproject/+/android-latest-release:/ 不支持搜索,也没有代码索引。
之前的分支,不论是 main:main 还是 android15-qpr2-release 都已经停止更新,但依然包括在搜索结果内,并且支持索引。
感觉Google有什么大病
https://source.android.com/docs/whatsnew/android-16-release
Android 16 正式发布
要自动重启,就不能侧载,只允许adb安装。找了一圈第三方安装器,发现这个世界上居然没有一款正常的shizuku安装器,天呐
正常指:1. 注册了打开方式 2.正常使用URI而不是要完全文件访问权限
https://storage.googleapis.com/play_public/supported_devices.csv
预装 gms 的设备列表
晃眼已经3年,太能鸽了(
https://github.com/RikkaApps/Shizuku/releases/tag/v13.6.0
Yes finally
https://github.com/microsoft/WSL/issues/1#issuecomment-2891686985
https://developer.android.com/build/releases/past-releases/agp-8-0-0-release-notes#settings-plugin
gradle 8.8 已经支持kts:https://github.com/gradle/gradle/issues/11210 可以用了
https://gemini.google/students/
优惠活动,2025年6月30日之前报名的美区 Google 账号可以试用 Google One。
注意:实测不需要edu邮箱,点按钮直接给订阅,但是有套路:优惠期结束后,系统将自动通过您的付款方式收取您所在国家/地区 Google One 的标准月费或年费,直至您取消订阅。
谷歌将不再支持在 Pixel 设备上构建 AOSP,而是支持虚拟 Android 设备“Cuttlefish”作为AOSP参考设备。Cuttlefish 在 PC 上运行,允许谷歌和平台开发者测试新的硬件功能。
谷歌之前发布Pixel的设备树、提供驱动程序二进制文件和分享完整的内核提交历史记录的原因是,Pixel 被视为 AOSP 的参考平台,因此开发者需要一种便捷的方法来为其构建系统。谷歌现在决定不再将 Pixel 作为 AOSP 的参考设备,因为 AOSP 需要一个灵活、可配置且价格合理的参考目标——独立于任何特定硬件,包括谷歌的硬件。
其实这篇文章错误不少,客户端与每个dc都有一个持久auth_key_id,每个持久ID只有一个临时auth_key_id,临时ID有效期24小时。他真的认真看过文档吗?
Читать полностью…后续 https://devblogs.microsoft.com/oldnewthing/20250609-00/?p=111258
发布于 2025年6月9日
希望罪魁祸首不是我这个帖子……
根据在avd上的测试,L3白盒Widevine在恢复出厂设置后,设备唯一ID会变。而真机上的测试表明,L1硬件Widevine恢复出厂设置,设备唯一ID不会变。
因此理论上打开此开关可以消除最后一个持久设备唯一ID,但未经测试。
值得一提的是,添加了针对二手设备的诊断功能 https://source.android.com/docs/core/perf/trade-in-mode{
"battery": {
"cycle_count": 16,
"health": 100,
"state": 2,
"manufacturing_date": 1653004800,
"first_usage_date": 0
},
"storage": {
"useful_lifetime_remaining": 99,
"capacity_bytes": "128000000000"
},
"launch_level": 33,
"locks": {
"factory_reset_protection": false
},
"product": {
"brand": "google",
"device": "panther",
"manufacturer": "Google",
"model": "Pixel 7",
"name": "panther"
},
"imeis": [
"353644930127905",
"353644930127913"
],
"serial": "26061FDH2000AP"
}
以上内容支持通过密钥认证证明真实性
<queries>
<intent>
<action android:name="*" />
</intent>
<intent>
<action android:name="*" />
<data android:mimeType="*/*" />
</intent>
<intent>
<action android:name="*" />
<data android:scheme="*" />
</intent>
</queries>
更正,v8关闭优化与关闭JIT不同。关闭 JIT (DefaultJavascriptJITSetting)是彻底的,进程沙箱会设置 PROHIBIT_DYNAMIC_CODE 标志即任意代码保护。而关闭优化(DefaultJavaScriptOptimizerSetting)只是v8自己不JIT,这允许 WebAssembly 正常工作。
例如 https://start.1password.com/ 和 https://ruffle.rs/demo/ 都需要 WebAssembly 才能正常显示。
想要跨3个平台获得完全相同的apk,很难。除了R8处理SPI的问题以外,原生库问题更多。
首先调试信息默认被AGP剥离,防止了项目路径的差异,这没问题。
然后NDK会嵌入llvm版本到注释节,3个平台的llvm虽然版本号一样,版本信息却不一样,这可以用 strip --remove-section=.comment 删除;
最后,build-id,它是在链接最后对输出计算散列生成的。所以调试信息和llvm版本信息不同会导致build-id不同。虽然也可以简单删除它或者直接禁止生成,但build-id确实有用,Android崩溃报告用它识别版本(用户只会说在用最新版),我试了三个方案:
1. 传递当前git提交哈希替换,--build-id=0x<hexstring> 。缺点是缓存失效每次需要重新编译,并且「相同的so,build-id却不同」的原始问题由跨构建平台不同变成了跨git提交不同。
2. 在计算build-id之前丢弃调试信息和注释节,需要使用链接器脚本。缺点是无法保存调试信息,即使有崩溃报告也无法还原行号。
3. 只丢弃注释节,使用 -ffile-prefix-map=OLD=NEW 参数重写绝对路径到相对路径。缺点是我还没成功过……不止项目路径,NDK和prefab路径应该也需要重写。
(推广可重现构建的人只会说你Windows编译的apk过不了我们的独立验证,开发者要考虑的就多了
Only files named lib*.so are copied by extractNativeLibs (Enforced for API level <= 35)
Until API level 36, PackageManager would only install files whose names match the glob lib*.so when extracting native libraries for non-debuggable apps. This was especially confusing (and hard to debug) because the restriction did not apply if your app was debuggable. To be compatible with all API levels, always give files that need to be extracted a “lib” prefix and “.so” suffix, or avoid using extractNativeLibs.
https://android.googlesource.com/platform/bionic/+/refs/heads/main/android-changes-for-ndk-developers.md#only-files-named-are-copied-by-enforced-for-api-level-35
终于修了
只要密钥认证具有Google根证书,就是真机,即基本完整性;
如果密钥认证显示bootloader状态是已验证,这是符合预期的设备,即设备完整性;
如果密钥认证显示安全补丁在一年内,则是可靠的设备,即强完整性。
不检查是否存在代码注入,su文件或者是userdebug系统,原因如图所示。
如何避免程序以管理员权限运行
先在兼容性页把需要管理员运行勾上,然后打开注册表编辑器定位到 计算机\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
,找到刚才添加的条目,改成 ~ RUNASINVOKER
。现在运行程序,不会请求管理员权限。
发现Chrome和Firefox的根证书管理已经功能一致,即:自带根证书库而不使用系统库,默认信任系统级第三方根证书但可以关闭,允许用户添加根证书。
另外,Firefox也和Chrome一样限制了HTTP/3只能使用自带库的证书,非公共信任的证书无法建立HTTP/3连接只能使用HTTP/2,这对防止协议僵化非常有用。