如何以程式設計方式啟用/禁用Android中的輔助功能服務
我想以程式設計方式啟用/禁用“設定” – >“輔助功能”選項下列出的輔助功能服務.
我可以啟動輔助功能意圖,如下所示:
Intent intent = new Intent(android.provider.Settings.ACTION_ACCESSIBILITY_SETTINGS); startActivityForResult(intent, 0);
但是我不知道如何通過我的程式碼啟用檢視中列出的服務.
請給我你的意見.
我找到一個解決方案,為我打電話
Settings.Secure.putString(getContentResolver(), Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES, "pkgname/classname"); Settings.Secure.putString(getContentResolver(), Settings.Secure.ACCESSIBILITY_ENABLED, "1");
pkgname是您的包名稱,classname是您的輔助功能服務的類名.
如果您需要啟用多個服務,或者您不想破壞以前可能要使用的設定:分離其他服務.
此外,您可能需要作為系統應用程式執行,您可能需要以下許可權
<uses-permission android:name="android.permission.WRITE_SETTINGS" /> <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
不過,根據ofollow,noindex" target="_blank">@Rupert Rawnsley ,這可能無法在某些版本的Android上執行,我正在使用Android 4.0.4,希望它適用於您.
PS.如果它不起作用,也許你可以在/data/data/com.android.providers.settings/databases/settings.db/secure中找到一些運氣,這就是Android儲存安全設定的地方.
http://stackoverflow.com/questions/10061154/how-to-programmatically-enable-disable-accessibility-service-in-android