这就是 Google 当年强推的 databinding 的下场,现在强推目标转向了 compose,它又能撑几年呢?
Читать полностью…https://aka.ms/customprimarypassword
使用自定义主密码保持已保存密码的私密性
edge的这个功能才是真的实用,在本地存储加密后的密码,避免被其它软件直接读取,例如 https://www.nirsoft.net/utils/web_browser_password.html
一直苦于mount(2)没有xxxxat系列让它能通过fd操作,必须使用当前挂载命名空间内的路径实在是非常不便。结果,只是手册补丁还没合并。syscall早有了:
https://people.kernel.org/brauner/mounting-into-mount-namespaces
世界瞬间美好起来,只需5.2以上版本即可使用
反面教材 https://github.com/GrapheneOS/platform_bionic/commit/d60f2060975f16a3ecd785a2af1b30151e847459
Android T的GKI已经支持GRND_INSECURE,应该使用它来避免init被阻塞而永远无法完成初始化。
https://r8.googlesource.com/r8/+/refs/heads/main/src/main/java/com/android/tools/r8/shaking/ProguardConfigurationParser.java
-keep 指定要保留的类和类成员
-keepclassmembers 指定要保留的类成员,前提是如果它们的类也被保留
-keepclasseswithmembers 指定要保留的类和类成员,前提是所述类成员全部存在
修饰符
allowshrinking 允许删除
allowoptimization 允许优化
allowobfuscation 允许重命名
allowaccessmodification 允许访问控制改为public
allowrepackage 允许移动包,allowsObfuscation会连带设置此项(旧版R8不支持)
allowannotationremoval 允许删除注解 (需要 com.android.tools.r8.allowTestProguardOptions=true)
includedescriptorclasses 也包括类型描述中的类
includecode 忽略
实现DocumentsProvider#isChildDocument(String, String)是支持Intent#ACTION_OPEN_DOCUMENT_TREE的必要条件,DocumentsContract.Root#FLAG_SUPPORTS_IS_CHILD 用于声明该方法是否实现。可惜这个flag只有少数DocumentsProvider拥有,Google自家的云端硬盘也没有。
https://developer.android.com/guide/topics/providers/create-document-provider
这个flag不普及的原因可能因为示例代码没有它,示例只包括如何支持 ACTION_OPEN_DOCUMENT,虽然只需要再多一个方法。
SEAndroid中的多级安全
https://cs.android.com/android/platform/superproject/+/master:external/selinux/libselinux/src/android/android_seapp.c;l=674;drc=48c968d18487b72ba8bfc14c43b796516e92145b
https://cs.android.com/android/platform/superproject/+/master:system/sepolicy/private/seapp_contexts
https://selinuxproject.org/page/NB_MLS
https://support.google.com/accounts/answer/11350823
Google 密码管理工具支持端到端加密
看起来是用 Google 账号登录密码作为口令加密密钥,理论上 Google 服务器只存储加密后的密钥。
http://www.cac.gov.cn/2022-12/11/c_1672221949354811.htm
《互联网信息服务深度合成管理规定》
第十七条 深度合成服务提供者提供以下深度合成服务,可能导致公众混淆或者误认的,应当在生成或者编辑的信息内容的合理位置、区域进行显著标识,向公众提示深度合成情况:
(一)智能对话、智能写作等模拟自然人进行文本的生成或者编辑服务;
(二)合成人声、仿声等语音生成或者显著改变个人身份特征的编辑服务;
(三)人脸生成、人脸替换、人脸操控、姿态操控等人物图像、视频生成或者显著改变个人身份特征的编辑服务;
第二十三条 本规定中下列用语的含义:
深度合成技术,是指利用深度学习、虚拟现实等生成合成类算法制作文本、图像、音频、视频、虚拟场景等网络信息的技术,包括但不限于:
(一)篇章生成、文本风格转换、问答对话等生成或者编辑文本内容的技术;
(二)文本转语音、语音转换、语音属性编辑等生成或者编辑语音内容的技术;
(三)音乐生成、场景声编辑等生成或者编辑非语音内容的技术;
(四)人脸生成、人脸替换、人物属性编辑、人脸操控、姿态操控等生成或者编辑图像、视频内容中生物特征的技术;
(五)图像生成、图像增强、图像修复等生成或者编辑图像、视频内容中非生物特征的技术;
看了半天没看懂,只觉得似乎很离谱。从语法分析来看,深度学习和虚拟现实是生成合成类算法的两个举例,即任何生成合成类算法都是深度合成技术。再看具体列表,美颜应该算吧?TTS也算?还有PS?
https://mogua.co/view_file/?file=com/miui/guardprovider/engine/mi/antidefraud/AntiDefraudAppManager.java&md5=baf42d5a0e84f7904b82a0320298b833&type=apk&appname=MIUI%20security%20components
MIUI 安全组件 这个系统应用的某个类的名字好像不太对劲呀。
这个类的行为是收集全部已安装应用,上传到服务器并获取其返回的危险应用列表
https://issuetracker.google.com/issues/236167971#comment25
已经发布
最近在调查改进shizuku的激活方式,目前Android生态中存在以下问题:
1. Android12 起 adb 没有权限访问应用私有数据目录(/data/user_de/x/com.android.example),被SELinux拦截,无法绕过
2. 部分Android11设备没有合入这个提交,导致adb无法访问 /sdcard/Android/data/com.android.example
3. 无线调试的「在当前网络上始终允许」没有真的记住,重启后丢失。直到Android13才修复
4. 华为系统把无线调试砍了,开发者选项中的配置项和授权弹窗界面被删除
5. 老生常谈的USB驱动问题,只有chromium系浏览器的webadb可以不用安装驱动
考虑以上现状,shizuku的激活方式需要修改,否则部分设备无法激活。作为参考,黑阈在网页调试和无线调试中直接传入较为复杂的启动命令,解决了激活问题。
✉️ <noreply-buganizer-system@google.com>
Issue Tracker could not process email with subject (Re: Issue 248179755: Clangd integration broken in flamingo canary 1)
Unfortunately, your email to create/update an issue was not processed.
Reason:
User did not have permission to update in
component '192703'
For information on how to use Issue Tracker's email interface, please visit:
Creating issues -
https://developer.android.com/build/migrate-to-ksp
Note: While not a traditionally-included library dependency, Data Binding also uses an annotation processor to provide its functionality, and KSP support for Data Binding is not planned. You can mitigate the impact of kapt on your build by isolating the usages of Data Binding to separate modules.
隔离UI和数据层到其它模块?Google你是否清醒
https://github.com/GrapheneOS/platform_frameworks_base/commit/a200e9b53f239a89368366b131acdd9dfee9d8c8
什么Windows试用版
https://gist.github.com/vvb2060/7375953b16fd41abdcf2a76363dfaaf4
最近 Maven Central 的网页经常出问题,整理了它的API,直接curl调用算了……
支持保存符号链接的存档格式有tar、wim和rar,7z和zip不支持。另外7z软件把选项藏得很深,与WinRAR不支持则禁用选项不同,它隐藏选项……坑人
Читать полностью…Because ADB 31.0.2 disables mDNS discovery, you must enable mDNS discovery and then restart the ADB server.
export ADB_MDNS_OPENSCREEN=1
adb kill-server
adb start-server
adb mdns services
adb connect driver_vm._adb._tcp
iPhone+Apple https://www.wsj.com/articles/apple-iphone-security-theft-passcode-data-privacya-basic-iphone-feature-helps-criminals-steal-your-digital-life-cbf14b1a
Android+Google https://twitter.com/MishaalRahman/status/1629315374679306240
移动设备的锁屏是数字资产的最后一道安全防线
锁屏被偷瞄不在任何安全模型的考虑范畴内,一旦泄露即可修改密码并且阻止失主的全部找回尝试。
修复被阻塞的随机
https://lwn.net/Articles/800509/
https://lwn.net/Articles/884875/
https://github.com/torvalds/linux/commit/50ee7529ec4500c88f8664560770a7a1b65db72b
https://github.com/torvalds/linux/commit/6f98a4bfee72c22f50aedb39fb761567969865fe
https://github.com/torvalds/linux/commit/48bff1053c172e6c7f340e506027d118147c8b7f
在初始化后,/dev/random和/dev/urandom完全相同,永远不会阻塞或耗尽,99%的程序不应该区分两者。唯一的例外是init,此时可能尚未初始化。
getrandom(0)会阻塞直到初始化完毕,等于/dev/random,GRND_RANDOM已经失去意义。
getrandom(GRND_INSECURE)会在初始化完成前返回尽力而为的随机内容,等于/dev/urandom,不可与GRND_RANDOM同时使用,永远不会阻塞,忽略GRND_NONBLOCK。
x86平台,会在阻塞1秒后初始化完毕,因此/dev/urandom始终与/dev/random相同。
Clash Android的附加HTTP代理功能会让okhttp5忽略应用内DNS配置,okhttp4则是DoH解析失败,如果没有回退到系统DNS,请求无法完成。
作为开发者,可以指定Proxy.NO_PROXY或者主动关闭DoH。
调用栈里有更多奇怪的名字😅
at com.miui.guardprovider.engine.mi.antidefraud.AntiDefraudAppManager.getSign(Unknown Source:0)
at com.miui.guardprovider.engine.mi.antidefraud.MiDetectAppsManager.virusInMiEngineRiskList(Unknown Source:30)
at com.miui.guardprovider.engine.mi.antidefraud.AntiDefraudAppManager.getDetectUnsafeAppStatus(Unknown Source:6)
at com.miui.guardprovider.manager.SecurityService$a.nationalAntiFraudSingleAppScan(Unknown Source:17)
at com.miui.guardprovider.aidl.IAntiVirusServer$Stub.onTransact(Unknown Source:38)
at android.os.Binder.execTransactInternal(Binder.java:1190)
at android.os.Binder.execTransact(Binder.java:1149)
HTTP 请求头 Sec-CH-UA: "Not=A?Brand";v="24" 解释
Sec:security,安全,禁止网页脚本修改该请求头
CH:client hints,客户端提示,允许服务器主动请求其所需的特定客户端信息
UA:user agent,用户代理,代表用户浏览网页的软件
GREASE: Generate Random Extensions And Sustain Extensibility,生成随机扩展并维持可扩展性。
Not=A?Brand:一个插入集合中的随机字符串,用于防止解析程序僵化。
标准文档:https://wicg.github.io/ua-client-hints/#grease
Android Studio 的clangd集成从canary1开始坏。开issue先是说已经修了;然后说canary2没修,3修了;接着说6修了;现在说6确实没修,8修了。
结果 canary8 还没发布呢,issue 直接没了
https://www.romainthomas.fr/publication/22-sstic-blackhat-droidguard-safetynet/
Читать полностью…