У меня есть служба помощи, которая работает правильно, пока клиент не будет установлен, когда хост установлен ранее, но, как я уже упоминал в заголовке, когда хост не установлен, и я устанавливаю клиент, а после этого я устанавливаю хост, я получаю SecurityException на bindService()
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}
Я также протестировал несколько приложений, которые используют помощь, и у них была такая же проблема!
ОБНОВЛЕНИЕ
Я понял, что проблема связана с разрешением, так как моя служба использует специальное разрешение, когда клиент установлен до хоста, он не может понять разрешение, поэтому, когда я устанавливаю хост и пытаюсь привязаться к нему, 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" />
любая идея, чтобы исправить проблему?