【第22期】观点:IT 行业加班,到底有没有价值?

针对SecurityException的处理方式

原创 2015年11月19日 09:48:36


情况一:

        在使用AIDL远程服务时,经常会遇到ERROR/AndroidRuntime(716): java.lang.SecurityException: Binder invocation to an incorrect interface这个错误,解决方法:在使用上请注意,服务端与客户端都要有相同的接口(使用到的),这里的“相同”是指完全相同,包括包名,也就是说要在不同工程下建立相同的包名。


一个是activity 的 ,一个是service 的。

在进行两个project通信时,应该有以下几点注意:
1.在activity project中引入service project中aidl文件。注意引入后的aidl文件包名应该和service中aidl文件包名保持一致。
2.service project中manifest文件中,service 注册时要声明 android:process=":remote"
action应该是aidl中接口的包名.接口名。

3.activity   bindService中一个serviceconnection对象对应的是一个service,否则会报java.lang.SecurityException: Binder invocation to an incorrect interface异常。

例如你原先在service中建立了一个    com.abc.service.test.aidl

那么你在要通信的 Activity 中要建立一个 com.abc.service.test.adil   即两者要对应。不要把test.adil 直接放在你activity的包中,重新见一个包,包名是com.abc.service 然后把test.aidl 放入去就OK

情况二:

当我们在别的应用内调用你某个程序的Activity有时候会发生这个错误:

 java.lang.SecurityException: Permission Denial: starting Intent { cmp=com.siveco.bluebee.phone.supervisor/com.siveco.bluebee.core.activity.GetServerAddressActivity } from ProcessRecord{412d7170 1644:com.siveco.bluebee.project.productionfeedback/10056} (pid=1644, uid=10056) not exported from uid 10047

解决方式:在Activity节点上添加属性:android:exported="true"

情况三:

java.lang.SecurityException: ConnectivityService: Neither user 10037 nor current process has android.permission.ACCESS_NETWORK_STATE.

原因:SecurityException,显然是权限不够。

解决方案:在AndroidManifest.xml中,加入如下权限:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>












版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

错误解决: java.lang.SecurityException: Permission Denial

场景:  java.lang.SecurityException: Permission Denial: starting Intent { cmp=com.siveco.bluebee.phone....

Android6.0中设置权限时候的SecurityException异常的处理

说来也巧了,今天碰到了一个特别奇怪的问题。上午写了一个小demo其中有一个功能是获取通讯的,大家肯定知道这时候肯定要添加一个权限: 添加完后就开始运行了,竟然报错了, ...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

Android 报错 java.lang.SecurityException: caller uid 10431 is different than the authenticator's uid

Android 开发,账户与同步。 在登录时使用系统AccountManager 进行账户添加,( 然后在手机-设置-账户与同步里面可以进行查看。) 在登录完成,进行添加时,报错java.lang...

关于SecurityException UID问题的解决

昨天遇到这个问题,一时没反应过来是什么回事 后来看见uid问题,这才有了思路.     其实过程是这样的.我要做一个项目,里面要用到闹钟功能,并且还要在里面加一些功能,于是乎我就搞到一个闹钟的源码...

Spring Security教程外篇(1)---- AuthenticationException异常详解

这个异常是在登录的时候出现错误时抛出的异常,比如账户锁定,证书失效等,先来看下AuthenticationException常用的的子类: UsernameNotFoundException 用户找...

JAVA常见异常解析

JAVA常见异常解析 --xyyan   1. java.lang.nullpointerexception   这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针&qu...

在使用ILSpy对c# dll进行反编译时遇到的问题及处理方式

1. error CS0579 error CS0579: Duplicate ‘global::System.Runtime.Versioning.TargetFrameworkAttribute...

SpringMVC 的 Controller 返回各种视图的处理方式

[url]http://my.oschina.net/u/178116/blog/602577[/url]
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)