Androidブラウザアプリケーションで現在アクセスしているユーザーの現在のURLを取得する方法を探しています。 私は以下の技術を使用してBrowser.BOOKMARKS_URI
データベースからの最後の訪問URLを得ることができることを考え出し:、これに伴う問題Androidブラウザで現在のURLを取得する
Cursor cursor = context.getContentResolver().query(Browser.BOOKMARKS_URI,
Browser.HISTORY_PROJECTION, null, null,
Browser.BookmarkColumns.DATE + " DESC");
cursor.moveToNext();
String url = cursor.getString(Browser.HISTORY_PROJECTION_URL_INDEX);
cursor.close();
ユーザーが順番に戻って押したときにBrowser.BOOKMARKS_URI
デシベルが更新されないということですブラウザの前のページに移動すると、クエリが不正な結果を返します。
は、次の例を参照してください:
- ユーザーは、www.google.comに移動 - >から
- ユーザーがwww.imdb.comへナビゲート>クエリを返す "www.google.com"クエリが返す "www.imdb.com"
- ユーザーがwww.google.comに戻り押す - >クエリを返す "www.imdb.com"(!!)
ユーザーが表示している正しいURLを返す方法はありますか?
コンテンツリゾルバが期待通りに働いているの許可を必要とする: 'www.google.com'のページをリロードしない背中を押しますが、キャッシュからそれを読み込みます。ユーザーがタブを切り替えると同じことが起こります。履歴には最新の読み込まれたURLが表示されますが、必ずしも表示されるURLではありません。あなたはあなたのアプリに埋め込まれているWebViewの現在のURLを追跡することができます。 –
私は自分のアプリに埋め込まれたWebViewを使っていません。 私はAndroidブラウザアプリケーションの現在のWebページを探しています。 –
私は通常のアプリケーション機能の外にあると思うが、何らかの方法でそれを提供しない限り、通常は別のアプリケーションデータにアクセスすることはできない。 – Nanoc