我需要在用户启用"从设置"下载未知来源时收到通知。这有可能吗?
干杯
答案 0 :(得分:1)
不幸的是,当用户更改Unknown Sources
配置的值时,Android不会发送任何内容。但是,当给定内容URI标识的数据发生更改时,您可以注册一个获取回调的观察者类。
您需要创建ContentObserver
:
ContentObserver observer = new ContentObserver(null) {
@Override
public void onChange(boolean selfChange) {
super.onChange(selfChange);
int enabled = Settings.System.getInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS, 0);
Log.d(TAG "onChange " + String.valueOf(enabled != 0));
}
@Override
public boolean deliverSelfNotifications() {
return true;
}
};
然后您可以使用以下代码进行注册:
Uri setting = Settings.System.getUriFor(Settings.Secure.INSTALL_NON_MARKET_APPS);
getContentResolver().registerContentObserver(setting, false, observer);
完成后,您可以取消注册内容观察者:
getContentResolver().unregisterContentObserver(observer);