2016-04-28 12 views
0

私はチャットをしています。このチャットでは、特定のURL(このURLはサーバー内のドキュメントビューアを開きます)へのリンクになります。その後、私はリンクのこのタイプを開きたいのWebView活性を有するhttp://X.X.X.X:8080/DocumentViewer/...特定のURLをクリックして自分のWebクライアントを開く方法 - Android

のリンクは次のように、見えます。

ユーザーがこのタイプのリンクをクリックして自分のwebviewを開いて「外部」ブラウザを開いていない場合、どのように「インターセプト」できますか?

+0

あなたが使用していますListViewを使用して会話を表示しますか?はいの場合、それは醜いかもしれませんが、ListViewでonItemClickListenerを設定し、メッセージを解析することができます... –

答えて

2

私ははあなたが興味のあるURLパターンのためのあなたのAndroidManifest.xmlファイルにintent-filterを作成することでこれを実現することができると思います。intent-filterさん< dataのドキュメント>要素は、あなたがhostschemeを指定することができる方法を示しています(あなたの場合は "html")を使ってURLを処理します。

This回答は、開発者がyoutube.comのURLを処理したいという例を示しています。私は完全にするために下のマニフェストスニペットをencludedています

<intent-filter> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
    <data android:host="www.youtube.com" android:scheme="http" /> 
</intent-filter> 

これに基づき、私はあなたのインテントフィルタのようなものを見なければならないこと(私はこれを行っていない自分自身)を考える:

<intent-filter> 
    <action android:name="android.intent.action.VIEW" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 
    <data android:host="http://X.X.X.X:8080/DocumentViewer/" android:scheme="http" /> 
</intent-filter> 
関連する問題