Post recenti
Pag. 1 di 5 · 51 post
Pubblicato 21 giorni fa
看来大家都意识到了一切皆文件行不通,序列化再反序列化是自讨苦吃。 什么时候加一个maps的syscall(
Pubblicato 23 giorni fa
介绍全新zygote:zygote_next ! zygote_next是独立于zygote64的全新zygote,Android17引入,专供app_zygote_native及其隔离服务使用。 app_zygote_native是app_zygote的原生版,不需要在java代码中加载原生库,而是直接在组件声明中指定。 <application android:zygotePreloadNativeLib="libvvb.so" android:zygotePreloadNativeFunc="ANativeApp_onCreate"> 如果不指定zygotePreloadNativeFunc,那么仅加载库。启动后进程名字为 包名_zygote_native 。 既然app_zygote已经原生化了,隔离服务当然也需要原生化。引入新属性 android:nativeService 和ndk头文件 android/native_service.h <service android:name=".NativeOnlyService" android:isolatedProcess="true" android:nativeService="true" android:useAppZygote="true" tools:ignore="MissingClass"> <property android:name="android.app.PROPERTY_NATIVE_SERVICE_LIBRARY_NAME" android:value="libmain.so" /> <property android:name="android.app.PROPERTY_NATIVE_SERVICE_FUNCTION_NAME" android:value="ANativeService_onCreate" /> </service> android:name仅做标识符,不需要存在对应类。两个property都是可选的,上文示例是其默认值,可以不存在对应文件,而是从app_zygote_native继承。android:useAppZygote="true"也是可选的,false表示直接由zygote_next派生,不经过app_zygote_native。 新特性介绍到这里结束,下面是相关的老功能:原生活动,虽然名字不一样,但很类似。头文件在 android/native_activity.h <activity android:name="android.app.NativeActivity" android:exported="true"> <meta-data android:name="android.app.lib_name" android:value="main" /> <meta-data android:name="android.app.func_name" android:value="ANativeActivity_onCreate" /> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 在Android17,root检测器终于能完全丢弃dex,只用原生代码编写了,可喜可贺。
Pubblicato 27 giorni fa
本地网络权限把无线调试弄坏了,局域网内无法连接,仅本机回环能连接。原因是adbd运行在shell uid上,而shell未授予ACCESS_LOCAL_NETWORK权限。 临时解决办法:由第三方app转发端口。
Pubblicato 30 apr
https://scholar.edu.cn
Pubblicato 30 apr
https://scholar.edu.cn
Pubblicato 27 apr
本地网络权限把无线调试弄坏了,局域网内无法连接,仅本机回环能连接。原因是adbd运行在shell uid上,而shell未授予ACCESS_LOCAL_NETWORK权限。 临时解决办法:由第三方app转发端口。
Pubblicato 27 apr
Android本地网络权限测试结果 Android17添加本地网络权限ACCESS_LOCAL_NETWORK,目标级别36带INTERNET权限的app在Android17 beta4上自动具有该权限及USE_LOOPBACK_INTERFACE权限。 ACCESS_LOCAL_NETWORK:如果该权限未授予,发送目标ip在当前子网内的ip包会失败,也无法接收来源ip在当前子网内的ip包。该限制仅对当前子网有效,不延伸到以下文档列出的全部本地网络IP:https://developer.android.com/privacy…
Pubblicato 27 apr
Channel photo updated
Pubblicato 25 apr
Android本地网络权限测试结果 Android17添加本地网络权限ACCESS_LOCAL_NETWORK,目标级别36带INTERNET权限的app在Android17 beta4上自动具有该权限及USE_LOOPBACK_INTERFACE权限。 ACCESS_LOCAL_NETWORK:如果该权限未授予,发送目标ip在当前子网内的ip包会失败,也无法接收来源ip在当前子网内的ip包。该限制仅对当前子网有效,不延伸到以下文档列出的全部本地网络IP:https://developer.android.com/privacy-and-security/local-network-definition 因此拥有多层网络环境的用户需要注意。与之类似,只要设备上存在tun网卡,不论对应的VPN应用是否运行在当前用户,是否配置为绕过VPN,应用均可显式绑定tun网卡,让VPN应用中转IP包。这样只需要VPN应用具有本地网络权限,而自身不需要。 USE_LOOPBACK_INTERFACE:如果该权限未授予,无法使用本地回环跨应用或跨用户通信,双方必须同时拥有该权限。已在Android17 QPR1 beta1停用,目标级别36的app不再自动具有该权限。现在同用户内各应用无须此权限也可通过本地回环通信;即使双方都有权限,跨用户网络通信也会被阻止。
Pubblicato 21 apr
app-release.apk
Pubblicato 21 apr
private boolean isSystemApp() { int binderCallingUid = getBinderCallingUid(); if (isSdkSandboxUidInternal(binderCallingUid)) { loge("isSystemApp: rejected call from SDK sandbox with uid=" + binderCallingUid); return…
Pubblicato 19 apr
AGP 9.1.0 的R8已经默认添加 -repackageclasses 指令,自动把所有可混淆类移动到未命名包,并且还支持 -maximumremovedandroidloglevel INFO 指令,这将删除info及以下级别的日志代码,其它级别同理。