我按如下方式创建了一个远程服务: -
<service android:name=".XYZService"
android:permission="com.xyz.service"
android:exported="true">
<intent-filter>
<action android:name="com.abc.def.XYZService"/>
</intent-filter>
</service>
我尝试使用客户端应用程序服务绑定此服务,如下所示: - //客户服务onStartCommand代码:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
boolean ret;
try {
Intent i = new Intent("com.abc.def.XYZService");
ret = getApplicationContext().bindService(i, serviceConnection,
Context.BIND_AUTO_CREATE);
if (ret == false) {
//log error
}
} catch (SecurityException e) {
e.printStackTrace();
}
return super.onStartCommand(intent, flags, startId);
}
客户端应用程序清单具有以下权限: -
<uses-permission android:name="com.xyz.service" />
不过,我有以下异常: - 安全例外:客户端服务没有绑定到xyz服务的权限。
我的目的是通过一些权限保护我的导出服务,并在客户端应用程序中使用该权限来访问导出的服务。 任何帮助将不胜感激。