問題タブ [accessibilityservice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 通知が通知されたときに通知を受け取る方法
他のアプリケーションによって通知バーで発生した通知を読み取り/アクセス/ログに記録したいと考えています。
Intents
色々と調べPendingIntents
たのですが、解決に至りませんでした。
通知が発生した場合、アプリケーションに通知する必要がありますか?
または、Android システムは、ユーザーレベルのアプリケーションによる通知を読み取るための何かを提供していますか?
android - AccessibilityService は開始されていますが、JellyBean で AccessibilityEvents を受け取りません
着信通知を読み上げる AccessibilityService があります。ICS 以下では正常に動作しますが、JB では動作しなくなりました。
以下はマニフェストとコードです。
前に述べたように、それは魅力のようにすべての preJB-Devices で動作しますが、JB ではサービスが開始されますが (「接続されています」と表示されます)、単一のイベントは発生しません。
コードに何か問題がありますか?
android - ユーザー補助サービスをデバッグするには?
AccessibilityServiceのデバッグに問題があり、解決策が見つかりません。Eclipseからのデプロイ/デバッグのたびに、サービスが自動的に再起動されず、サービスを手動で再起動する必要があります。
私が今しなければならないこと:
- 新しいコードをいくつか追加し、Eclipse でデプロイ/デバッグしています。
- アプリケーションは正しくデプロイされて開始されていますが、新しいバージョンのサービスは開始されていません (サービスからのメッセージが表示されず、ブレークポイントが機能していません)。
- 手動で設定 -> アクセシビリティを開いて、サービスが実行されていることを確認します。
- サービスを手動で停止および開始しています - 現在、サービスは機能しています。
私はより速い方法でそれをしたい:
- いくつかのコードを追加してデプロイし、サービスを再起動すると、手動で退屈な再起動をしなくてもブレークポイントが機能します!
手動で再起動せずにアクセシビリティ サービスをデバッグする方法を教えてください。
android - 通知が削除されたかどうかを検出する
次の問題があります。通知バーから通知が削除されたことを検出したい。
AccessbilityService で通知をスキャンし、その ParcelableData を通知にキャストできます
私の考えの 1 つは、通知の PendingIntent がクリックされたかどうかを利用することでしたが、それを検出する方法については何も見つかりません。
何か案は?私はちょっと必死です...今何時間も試しています。
android - ユーザー補助サービスを使用して通知アイコンを取得する
システム通知のアイコンを取得する方法はありますか? アクセシビリティ サービスで通知小包を受け取ることができます。そこからアイコンのIDを取得することもできますが、そこで立ち往生しています。ID を使用して実際のビットマップを取得し、それを表示できるようにする方法がわかりません。これは、apk からのものではないためです。
これまでの私のコードは次のとおりです。
この ID を使用しようとすると、
android.content.res.Resources$NotFoundException: リソース ID #0x7f0200ad
android - Android AccessibilityService が接続しない
通知イベントを傍受するために AccessibiltyService を拡張しようとしています。私の問題は、私のクラスがサービスに接続しないことによって作成されることです。
これが私のアプリの仕組みです:
- いくつかの統計の収集を管理し、通知イベントも監視する必要があるサービス (StatisticsService) があります。
- そのために、対象の統計ごとに StatCollector (Java オブジェクト) を作成します。
- すべての StatCollector は同じインターフェースを実装し、作成されると StatisticService コンテキストを保存します。
- この StatCollector の 1 つが、AccessibilityService を拡張する NotificationService を開始します。
関連するクラスは次のとおりです。
StatCollector:
通知サービス:
Manifest.xml: (関連コンポーネント)
android.permission.BIND_ACCESSIBILITY_SERVICE を NotificationService に追加すると、アプリが次のエラーでクラッシュすることに注意してください
問題は、BIND_ACCESSIBILITY_SERVICE 権限があることを明示的に言及していないため、システムが NotificationService クラスを無視していることだと思います。しかし、マニフェスト ファイルのサービスに追加すると、アプリがクラッシュします。
私は何が欠けていますか/間違っていますか?
ありがとう
アップデート
Dr.Cyanideのコメントのおかげで、特定のアプリのアクセシビリティは、ユーザーが [設定] の [アクセシビリティ] メニューで有効にする必要があることがわかりました。
さらにタグは
ジェリービーン以前のバージョンには必要ないので、ICSを使用しているので削除しました。
アプリは期待どおりに動作するようになりました
android - Android通知の存在を確認しています
ステータスバーに通知が存在するかどうか(できれば非永続的な通知のみ)をプログラムで確認できるようにしたいと考えています。これには、アプリによって作成された通知だけでなく、すべての通知が含まれる必要があります。特定の通知や総数に関する情報は必要ありません。現在、ステータス バーに通知が表示されているかどうかを知りたいだけです。
調査したところ、アクセシビリティ サービスに対処する必要がある可能性が高いことがわかりました。それは問題ありませんが、これまでのところ、現在の通知を確認するソリューションは見つかりませんでした。これまでのすべてのソリューションは、新しい通知を検出する方法のみを示しています。いつでもクエリを実行して、通知の有無を確認できるようにしたいと考えています。
1 つの (醜い) オプションは、すべての新しい通知と通知のクリアを常に追跡することですが、これは信頼できないかもしれません。もっと簡単できれいな方法があるかどうか知りたいです。
どんなガイダンスも本当に役に立ちます。