2011-09-15 14 views
6

Występuje ten błąd podczas uruchamiania usługi z onReceive lub onUpdate w mojej klasie AppWidgetProvider.Android PermissionDenial: Bind_RemoteViews Licencja

09-15 11:54:04.096: WARN/ActivityManager(1318): Permission Denial: Accessing service ComponentInfo{com.fttech.gameIT/com.fttech.StackWidgetService} from pid=1318, uid=1000 requires android.permission.BIND_REMOTEVIEWS 

Już zadeklarowałem pozwolenie w moim Manifeście Androida.

Ale nadal daje mi to.

Czy coś jest nie tak?

Oto co mój kod wygląda ..

@Override 
public void onReceive(Context context, Intent intent){ 
    AppWidgetManager.getInstance(context); 

    intent = new Intent(context, StackWidgetService.class); 
    context.startService(intent); 

    super.onReceive(context, intent); 
} 
@Override 
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds){ 

    super.onUpdate(context, appWidgetManager, appWidgetIds); 
    Intent intent = new Intent(context, StackWidgetService.class); 
    context.startService(intent); 
} 

}

EDIT: Mam to w moim ogłosił manifest ..

Oto co jeszcze dostać ...

09-15 12:13:03.818: WARN/ActivityManager(1318): Permission Denial: Accessing service ComponentInfo{com.fttech/com.fttech.StackWidgetService} from pid=1318, uid=1000 requires android.permission.BIND_REMOTEVIEWS 
09-15 12:13:03.864: WARN/ActivityManager(1318): Permission Denial: Accessing service ComponentInfo{com.fttech/com.fttech.StackWidgetService} from pid=1318, uid=1000 requires android.permission.BIND_REMOTEVIEWS 
09-15 12:13:03.872: WARN/ActivityManager(1318): finishReceiver called but no pending broadcasts 
09-15 12:13:03.919: WARN/WidgetAidService(21261): BroadcastReceiver onReceive called 
09-15 12:13:03.919: WARN/ActivityManager(1318): Permission Denial: Accessing service ComponentInfo{com.fttech/com.fttech.StackWidgetService} from pid=1318, uid=1000 requires android.permission.BIND_REMOTEVIEWS 

EDIT: Manifest

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

    <service android:name="StackWidgetService" 
     android:enabled="true" 
     /> 

Jest pozwolenie i Służby zadeklarowane w moim manfiest

+0

Co próbujesz przez swój kod ... próbujesz użyć go w innej aplikacji lub coś podobnego ...? –

+0

Nie ... używam go tylko w jednym. –

Odpowiedz

6

Spróbuj umieścić swoją zgodę wewnątrz znacznika serwisowego:

<application> 
    ... 
    <service 
     android:name=".StackWidgetService" 
     android:exported="false" 
     android:permission="android.permission.BIND_REMOTEVIEWS" /> 
</application> 

Również kropka przed nazwą klasy jest ważne, ponieważ jest to skrót (nie musisz więc pisać w pełni kwalifikowanej nazwy klasy), a atrybut android: enabled ma domyślnie wartość true.

0

miałem ten problem, a także,

Na szczęście, miałem to się stało w projekcie 3 miesięcy po pierwszy dodając uprawnienia.

W pakiecie SDK musi być błąd, ponieważ podano mi bez żadnych wątpliwości "Jest to uprawnienie systemowe" i nie pozwolę uruchomić swojego projektu przez Eclipse. Za pośrednictwem ant jednak zbudował dobrze. Co więcej, po wyczyszczeniu i zbudowaniu projektu zdecydował, że nie było to jednak pozwolenie na system i wszystko było w porządku.

Mam nadzieję, że do tej pory Twój błąd zniknął, ale warto zauważyć, że każdy, kto tu się znajduje, może zignorować to (AFAIK), jeśli kilka czystych i odbuduje go odejść.

Powiązane problemy