gpt4 book ai didi

java - 是否可以获取手机当前选择的配置文件?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:04:30 24 4
gpt4 key购买 nike

库存的 Cyanogenmod ROM 支持内置的配置文件,虽然我不确定这是否是默认 Android 功能的一部分,但我想知道是否有可能获得当前所选配置文件的名称。

我找不到任何关于此的开发者文档。

(假设 Android SDK 不支持这个, super 用户应用程序可以实现这个功能吗?)

谢谢


通过一些 CM 源代码,我找到了 ProfileManager 的源代码.这些方法是公开的,所以我想我不需要深入 Java 反射的兔子洞……但是为了使用这些类,我需要一些 Cyanogenmod JAR 来构建。

最佳答案

明白了。有点丑陋的反射(reflection),瞧。这些类(class)是 ProfileManagerProfile

    Object o = getSystemService("profile");
try {

Class<?> ProfileManager = Class.forName("android.app.ProfileManager");
Class<?> Profile = Class.forName("android.app.Profile");
try {

Method getActiveProfile = ProfileManager.getDeclaredMethod("getActiveProfile", null);
Method getName = Profile.getDeclaredMethod("getName", null);

try {

String strProfile = (String) getName.invoke(getActiveProfile.invoke(o));
System.out.println("Current profile is: " + strProfile);

} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}

} catch (NoSuchMethodException e) {
e.printStackTrace();
}

} catch (ClassNotFoundException e) {
e.printStackTrace();
}

关于java - 是否可以获取手机当前选择的配置文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15832332/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com