关于系统设置的代码,基本都在android.provider.Settings类中。仔细查看Settings类,可以找到如下的常量值:
/**
* Whether applications can be installed for this user via the system's
* {@link Intent#ACTION_INSTALL_PACKAGE} mechanism.
*
* <p>1 = permit app installation via the system package installer intent
* <p>0 = do not allow use of the package installer
*/
public static final String INSTALL_NON_MARKET_APPS = "install_non_market_apps";
根据翻译,猜测这个常量就是用来控制是否允许安装未知来源应用的。
/**
* 允许安装未知来源的应用
*/
public static void allowUnKnowSrc(Context context){
try {
android.provider.Settings.Global.putInt(context.getContentResolver(),
android.provider.Settings.Secure.INSTALL_NON_MARKET_APPS,1);
}catch (SecurityException e){
//LogUtils.getInstance().d(e);
}
}
用以上代码进行测试,果然是对的。其中的变量:1代表允许,如果换成0则代表禁止。
其它的一些系统设置,比如系统时间时区的设置,系统屏幕亮度的设置等,都可以用以上的形式操作。在Settings类中找到相应的常量值即可。
ps:要有系统权限,以及写系统设置的权限!