本文主要是介绍frida timed out,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
从Android Q(10)开始,Google引入了一种新的机制,加快了app的启动时间
Android USAP 进程启动流程
adb shell
su
ps -A | grep usaproot 9917 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9928 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9939 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9950 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9961 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9972 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
root 9983 1032 6577052 13676 __skb_wait_for_more_packets 0 S usap64
解决方法
adb shell
su
setprop persist.device_config.runtime_native.usap_pool_enabled false
setprop persist.sys.usap_pool_enabled false
reboot
getprop|grep usap[persist.device_config.runtime_native.usap_pool_enabled]: [false]
[persist.sys.usap_pool_enabled]: [false]
This is what i do for samsung A50 and worked
adb shell
su
mount -o remount,rw '/'
chmod 777 /adb shell "su -c setenforce 0"setprop persist.device_config.runtime_native.usap_pool_enabled false
settings put system screen_off_timeout 100000000
exit
exit
adb查看enforce
adb shell 命令可以让你在连接到 Android 设备的情况下,通过 shell 访问设备的 Linux 环境。在这个环境中,你可以运行很多 Linux 命令,包括 getenforce。getenforce 是一个用来查看 SELinux 状态的命令,SELinux 是一种安全子系统,它对应用程序的行为进行严格的限制。要通过 adb 查看 SELinux 的状态,你可以在命令行中执行以下命令:adb shell getenforce
这条命令会返回 SELinux 的状态,可能的返回值有:Enforcing:SELinux 正在强制模式下运行,限制严格。Permissive:SELinux 正在宽容模式下运行,违规记录下来但不强制执行。Disabled:SELinux 被禁用。如果你想要临时改变 SELinux 的状态,你可以使用 setenforce 命令:adb shell setenforce 0 # 设置为 Permissive 模式
adb shell setenforce 1 # 设置为 Enforcing 模式
请注意,通常情况下你不应该临时更改 SELinux 的状态,这可能会导致安全风险。更改 SELinux 状态应该在完全理解后果的情况下进行,并且通常需要在设备的整个生命周期内保持一致性。
参考资料
Failed to spa
wn: unexpectedly timed out while waiting for app to launch
frida TimedOutErro
这篇关于frida timed out的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!