При разработке приложения Launcher (Homescreen) для Android я столкнулся с исключением безопасности, которое не понимаю.
- При вызове метода [bindAppWidgetId()][1] из моей активности Launcher я получаю это исключение безопасности:
08-19 11:30:11.689: ERROR/AndroidRuntime(6032): java.lang.SecurityException: bindGagetId appWidgetId=99 provider=ComponentInfo{com.android.music/com.android.music.MediaAppWidgetProvider}: Пользователь 10034 не имеет android.permission.BIND_APPWIDGET.
Сначала я подумал, что забыл разрешение BIND_APPWIDGET в своем манифесте, но оно определенно там.
В документации Android API указано следующее:
«Вам необходимо разрешение APPWIDGET_LIST. Этот метод должен использоваться средством выбора AppWidget».
Я попытался добавить разрешение android.permission.APPWIDGET_LIST, но это не решает проблему.
Кроме того, я просмотрел манифест приложения «Настройки» из источников Android, который содержит код AppWidgetPickActivity: есть специальная строка, которая просит поделиться идентификатором пользователя:
«андроид: общий идентификатор пользователя = «android.uid.system»
Может ли это быть связано с моей проблемой?
Если у кого-то есть идея, это было бы здорово!
Привет, Лоран