Android5.1.1 - zygote中获取系统服务时抛出异常

Android5.1.1 - zygote中获取系统服务时抛出异常:TransactionTooLargeException

@(Android研究)[android|TransactionTooLargeException]


[TOC]


当前只粗略定位到了问题所在,还不知道原因和解决办法。如果后续有继续研究下去,请把这篇文章写完。

zygote中获取系统服务时抛出异常:TransactionTooLargeException,下面是异常详细信息:

03-31 20:09:20.761 18074-18074/? W/main: type=1400 audit(0.0:2310): avc: denied { call } for scontext=u:r:zygote:s0 tcontext=u:r:servicemanager:s0 tclass=binder permissive=0
03-31 20:09:20.761 18074-18074/? W/main: type=1400 audit(0.0:2311): avc: denied { call } for scontext=u:r:zygote:s0 tcontext=u:r:servicemanager:s0 tclass=binder permissive=0
03-31 20:09:20.768 18074-18074/? E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!
03-31 20:09:20.772 18074-18074/? E/ServiceManager: error in getService
                                                   android.os.TransactionTooLargeException
                                                       at android.os.BinderProxy.transactNative(Native Method)
                                                       at android.os.BinderProxy.transact(Binder.java:496)
                                                       at android.os.ServiceManagerProxy.getService(ServiceManagerNative.java:123)
                                                       at android.os.ServiceManager.getService(ServiceManager.java:55)
                                                       at android.bw.BWUtils.getBWService(BWUtils.java:114)
                                                       at android.bw.BWUtils.needsRoot(BWUtils.java:155)
                                                       at com.android.internal.os.Zygote.nativeForkAndSpecialize(Native Method)
                                                       at com.android.internal.os.Zygote.forkAndSpecialize(Zygote.java:96)
                                                       at com.android.internal.os.ZygoteConnection.runOnce(ZygoteConnection.java:251)
                                                       at com.android.internal.os.ZygoteInit.runSelectLoop(ZygoteInit.java:789)
                                                       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:695)
03-31 20:09:20.774 17895-17895/system_process I/ActivityManager: Start proc 18074:com.android.systemui/u0a16 for service com.android.systemui/.keyguard.KeyguardService

经过问题定位发现,当执行完"frameworks/base/core/jni/com_android_internal_os_Zygote.cpp"文件中ForkAndSpecializeCommon函数的"rc = selinux_android_setcontext(uid, is_system_server, se_info_c_str, se_name_c_str);"语句后再获得系统服务就不会报出上面的错误。所以我认为这个问题与SeAndroid有关。

转载于:https://my.oschina.net/ibuwai/blog/684562

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值