
Intent serviceIntent = new Intent(AIDlService.class.getname());if (!mContext.getPackageManager().queryIntentServices(serviceIntent,0).isEmpty()) { mContext.bindService(serviceIntent,mServiceConn,Context.BIND_auto_CREATE);}Caused by: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.mypackage.AIDlService} 我还测试了一些使用aIDl的应用程序,他们遇到了同样的问题!
UPDATE
我发现问题是经许可的,
由于我的服务使用自定义权限,当客户端在主机之前安装它无法理解权限时,所以当我安装主机并尝试绑定到它时,androID无法使用该权限,因此它会引发安全性异常!
androID:permission="com.mypackage.AIDlService.BIND"<permission androID:name="com.mypackage.AIDlService.BIND" androID:label="@string/pername" androID:description="@string/perDesc" androID:protectionLevel="normal" />
有什么想法来解决这个问题吗?
解决方法 根据 Android Custom Permission Fails Based on App Install Order你应该使用androID:protectionLevel =“signature”而不是正常在权限标记中
总结以上是内存溢出为你收集整理的当客户端安装主机后,android aidl无法绑定到服务全部内容,希望文章能够帮你解决当客户端安装主机后,android aidl无法绑定到服务所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)