相关疑难解决方法(0)

Android上的系统应用和特权应用有什么区别?

所以在4.3中有一个系统应用程序的概念.放入的APK /system/app被授予系统权限.从4.4开始,有一个新的"特权应用程序"概念.特权应用程序存储在/system/priv-app目录中,似乎有不同的对待.如果你查看下面的AOSP源代码PackageManagerService,你会看到新的方法,如

static boolean locationIsPrivileged(File path) {
    try {
        final String privilegedAppDir = new File(Environment.getRootDirectory(), "priv-app")
                .getCanonicalPath();
        return path.getCanonicalPath().startsWith(privilegedAppDir);
    } catch (IOException e) {
        Slog.e(TAG, "Unable to access code path " + path);
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)

所以这里是一个不同的情况的例子.

public final void addActivity(PackageParser.Activity a, String type) {
...
if (!systemApp && intent.getPriority() > 0 && "activity".equals(type)) {
                intent.setPriority(0);
                Log.w(TAG, "Package " + a.info.applicationInfo.packageName + " has activity "
                        + a.className + " with priority > 0, …
Run Code Online (Sandbox Code Playgroud)

android android-source

59
推荐指数
1
解决办法
6万
查看次数

Android Lollipop - WiFi Hotspot setWifiApEnabled()获取InvocationTargetException

我在应用程序中使用

setWifiApEnabled()
Run Code Online (Sandbox Code Playgroud)

来自隐藏API(通过反射访问).它在一些较旧的手机上工作(还有三星Galaxy S3,有些手机有4.4,......)但我用三星Galaxy S5测试了它,我得到了

java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
...
Run Code Online (Sandbox Code Playgroud)

我正在使用类似的代码,如Android 2.2 wifi热点API如何设置为Android WifiConfiguration.preSharedKey连接到WPA2 PSK WiFi网络,但这是一个旧的代码.

你有经验吗?你有什么建议?

PS它在某些Android 4.4设备中也不起作用(但我没有得到InvocationTargetException).

android wifimanager android-wifi android-5.0-lollipop

5
推荐指数
1
解决办法
6767
查看次数