【问题标题】:How to remove this error ? java.lang.reflect.InvocationTargetException [duplicate]如何消除此错误? java.lang.reflect.InvocationTargetException [重复]
【发布时间】:2012-02-25 00:36:37
【问题描述】:

我添加了所有需要的权限

 PackageManager packageManager = context.getPackageManager();
    Class<?> [] c = new Class[2];
    c[0] = String.class;
    c[1] = IPackageDataObserver.class;
    try {

    Object cleardata = packageManager.getClass().getMethod("clearApplicationUserData", c);
       Object[] o = new Object[2];
       o[0] = String.valueOf("my.app.withdata");
       o[1] = new ClearApplicationDataObserver();

    ((Method)cleardata).invoke(packageManager, o);
  }
    catch(Exception e) {e.printStackTrace();
 }

02-02 16:08:26.629: W/System.err(709): java.lang.reflect.InvocationTargetException
02-02 16:08:26.678: W/System.err(709):  at java.lang.reflect.Method.invokeNative(Native Method)
02-02 16:08:26.738: W/System.err(709):  at java.lang.reflect.Method.invoke(Method.java:511)
02-02 16:08:26.738: W/System.err(709):  at f.c.v.ClearUserDataUsingInterfaceActivity.run1(ClearUserDataUsingInterfaceActivity.java:105)
02-02 16:08:26.778: W/System.err(709):  at f.c.v.ClearUserDataUsingInterfaceActivity$1.run(ClearUserDataUsingInterfaceActivity.java:52)
02-02 16:08:26.778: W/System.err(709):  at java.lang.Thread.run(Thread.java:856)
02-02 16:08:26.778: W/System.err(709): Caused by: java.lang.SecurityException: Neither user 10048 nor current process has android.permission.CLEAR_APP_USER_DATA.
02-02 16:08:26.778: W/System.err(709):  at android.os.Parcel.readException(Parcel.java:1327)
02-02 16:08:26.778: W/System.err(709):  at android.os.Parcel.readException(Parcel.java:1281)
02-02 16:08:26.808: W/System.err(709):  at android.content.pm.IPackageManager$Stub$Proxy.clearApplicationUserData(IPackageManager.java:2568)
02-02 16:08:26.808: W/System.err(709):  at android.app.ApplicationPackageManager.clearApplicationUserData(ApplicationPackageManager.java:1006)
02-02 16:08:26.808: W/System.err(709):  ... 5 more

【问题讨论】:

  • 你之前也问过同样的问题。
  • 是的,我已经问过了,但没有得到答案。
  • @johnsmith - 如果您希望人们关注您的旧问题,1) 根据需要进行更新,2) 发布奖励。 (你有足够的代表点数!)不要只是转发问题......因为转发将作为重复而关闭。

标签: java android reflection package invoke


【解决方案1】:

尝试将此权限添加到您的应用程序清单中。:

android.permission.CLEAR_APP_USER_DATA

【讨论】:

  • 我添加了权限 android.permission.CLEAR_APP_USER_DATA 不起作用
  • 好吧,回去检查一下你添加的权限是不是正确的!!显然,安全管理器仍然说应用程序没有所需的权限......无论你认为你做了什么。
【解决方案2】:

nvocationTargetException 是由于系统无法调用一个activity,并且是因为activity还有另一个错误,请检查真正的问题是:java.lang.SecurityException:用户10048和当前进程都没有android.permission。 CLEAR_APP_USER_DATA。这是因为您需要在 android manifest 文件中设置此权限。

【讨论】:

  • 我添加了权限 android.permission.CLEAR_APP_USER_DATA 不起作用
  • 然后再次清理并启动您的应用程序。
猜你喜欢
  • 1970-01-01
  • 2014-12-02
  • 1970-01-01
  • 1970-01-01
  • 2021-11-16
  • 2012-01-19
  • 2021-08-21
相关资源
最近更新 更多