2

アプリケーションが起動したらすぐに、アプリケーションのアクセシビリティ設定を有効にしようとしています。しかし、私は現在それを行うことができません。次のコードを使用しました。

 Settings.Secure.putString(getContentResolver(), 
                           Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES, 
                           "package_name");
 Settings.Secure.putString(getContentResolver(), 
                           Settings.Secure.ACCESSIBILITY_ENABLED, 
                           "1");

このコード スニペットを使用するには、次のアクセス許可を宣言する必要があります。

WRITE_SECURE_SETTINGS ですが、この権限はシステム アプリケーションにのみ適用されます。アプリケーションで同じ機能を実現するにはどうすればよいですか。すべての提案を歓迎します。

4

2 に答える 2

7

API は言う: Settings.Secure

アプリケーションによって直接変更されるのではなく、ユーザーがシステム UI またはそれらの値に特化した API を介して明示的に変更する必要がある設定。

プログラムで確認してユーザーにプロンプ​​トを表示する場合は、 android-how-do-you-check-if-a-particular-accessibilityservice-is-enabledも参照してください。インテントを呼び出すコードは、たとえばhow-to-programmatically-enable-disable-accessibility-service-in-androidで指定されています。

Intent intent = new Intent(android.provider.Settings.ACTION_ACCESSIBILITY_SETTINGS);
startActivityForResult(intent, 0);
于 2015-08-14T14:27:25.823 に答える
3

5月のアプリケーションで同じ機能を実現するにはどうすればよいですか

明らかにプライバシーとセキュリティ上の理由から、できません。は、ユーザーがデバイスのAccessibilityServiceユーザー インターフェースを使用して行う操作に広範囲にアクセスできます。そのため、ユーザーは、設定アプリを介して別のアクションとして有効にすることに同意する必要があります。

于 2015-08-14T12:35:56.257 に答える