所以我一直在寻找一周左右的时间,似乎很有可能从Activity
开始Service
,事情的总体顺序如下:
Intent myIntent = new Intent();
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
myIntent.setComponent(new ComponentName("[package]", "[class]"));
getApplication().startActivity(myIntent);
从WallpaperService尝试此操作时,我得到的内容似乎是特定于墙纸的错误requires android.permission.BIND_WALLPAPER
。堆栈跟踪显示startActivity是罪魁祸首。
我不知道如何给予这个许可;我已尝试将android:permission="android.permission.BIND_WALLPAPER"
放在清单中的每个标记上,以及<uses-permission android:name="android.permission.BIND_WALLPAPER" />
值得注意的是,调试视图确实有警告:
WARN / PackageManager(59):未授予权限 包的android.permission.BIND_WALLPAPER(protectionLevel = 3 标志= 0xbe46)
被问到的一般问题在标题中。 提前谢谢!
答案 0 :(得分:3)
你想把android:permission =“android.permission.BIND_WALLPAPER”放在服务标签内,而不是其他任何地方。