Web watcher: add support for Brave (`com.brave.browser` missing from KNOWN_BROWSER_PACKAGES)
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 78/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 領域
- mobile-dev
調査の方向性
WebWatcher、extractUrl()、KNOWN_BROWSER_PACKAGESを検索し、既存のChromeパッケージがどのようにURLエクストラクターへルーティングされているかを確認します。BraveのパッケージとアドレスバーのビューIDを使ってBraveを追加し、Braveのアクセシビリティイベントによってセッションが終了するのではなくURLが記録されることを検証します。
索引モデルが issue の本文から書いたものです。
説明
Summary
The Android web watcher only extracts URLs for a hardcoded list of browsers, so users of Chromium-based browsers that aren't on that list end up with an empty aw-watcher-android-web bucket even when the Accessibility permission is granted and working.
Current behaviour
WebWatcher resolves URLs via extractUrl(), gated on KNOWN_BROWSER_PACKAGES:
com.android.chrome—com.android.chrome:id/url_barorg.mozilla.firefox— several extractors (ADDRESSBAR_URL_BOX,url_bar_title,mozac_browser_toolbar_url_view)com.sec.android.app.sbrowser— two view idscom.opera.browser— two view idscom.microsoft.emmx—com.microsoft.emmx:id/url_bar
Any other browser package is not matched: the event is classified as "window changed away from a tracked browser", the session is ended, and no URL is recorded. Affected browsers include Brave, Vivaldi, DuckDuckGo, and most OEM browsers.
Request
Add com.brave.browser to KNOWN_BROWSER_PACKAGES and route it to the same extractor as Chrome. Brave is Chromium-based and exposes its address bar as com.brave.browser:id/url_bar, so the existing extractTextByViewId(event, "…:id/url_bar") call should work unchanged.
Longer term
Consider a generic fallback for unknown packages: try the url_bar / url_bar_title family of view ids by matching the suffix of a node's viewIdResourceName rather than requiring a full package-qualified id, before giving up. That would cover the rest of the Chromium-derived browsers and avoid one PR per browser.
It would also help to list the currently supported browsers in the app's UI and/or in the docs on web tracking, so users don't have to read the source to find out why their web bucket is empty.
- 主要言語
- Kotlin
- スター
- 270
- フォーク
- 57
- 平均マージ
- 20時間 32分
- マージ済み PR(30日)
- 38
環境構築
このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
ActivityWatch/aw-android のほかの issue
-
AuthSettingsActivity crashes on launch (InflateException: Material attributes under AppCompat theme)オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
ActivityWatch/aw-android#210 · コメント 7 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
ActivityWatch/aw-android#302 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 58/100
ActivityWatch/aw-android#300 · コメント 6 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 48/100
ActivityWatch/aw-android#296 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
ActivityWatch/aw-android#291 · コメント 7 件 ·
メンテナーはふだん 1 日以内に返信
ActivityWatch/aw-android の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
AAswordman/Operit#1292 ·
メンテナーはふだん 3 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
bug webview
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
home-assistant/android#7524 ·
メンテナーはふだん 1 日以内に返信
-
Issue: Bug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
OpenAPITools/openapi-generator#25021 ·
メンテナーはふだん 1 日以内に返信