2017-02-09 6 views
0

私のメディファーストでは、モバイル内の任意のソースによって関連URLが開こうとしたときにユーザーにオプションを表示するために次のコードを使用しますが、オプションで私のアプリケーションを表示する代わりに。 何が問題なのですか?あなたは、このように私のためにその作業を使用する必要がインテントフィルタを使用したAndroidオープニングアプリケーションリンクが機能しない

<data android:scheme="http" 
      android:host="www.mysite.com" /> 
    <data android:scheme="https" 
      android:host="www.mysite.com" /> 
+0

あなたの活動のコードを示してください。特に '' onNewIntent''コールバックです。 アクティビティでこれを行うことができるかどうかはわかりません。 で試しましたか? – Grisgram

+0

これでonCreateでそれを処理するアクティビティでは、 Intent intent = getIntent(); url = intent.getData()。toString(); –

+0

onCreateとonNewIntentの違いは、あなたのアクティビティがすでに(バックグラウンドで)存在していれば、再び '' created''されないことです。代わりに '' onNewIntent''を受け取ります。 From Docs: ''どちらの場合でも、アクティビティの新しいインスタンスではなく、アクティビティスタックの先頭にアクティビティが再起動されると、onNewIntent()はインテントを持つ既存のインスタンスに対して呼び出されます'' – Grisgram

答えて

1

あなたはあなたにデータタグを変更してみてくださいでした。

<activity 
       android:name=".MainActivity" 
       android:screenOrientation="portrait"> 
       <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="mysite.com" 
        android:pathPrefix="/m/showroom/mypage" 
        android:scheme="http" /> 
      </intent-filter> 
     </activity> 
+0

です。 –

0

<activity android:name=".VisitWebPage" > 
      <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:scheme="http" /> 
       <data android:scheme="https" /> 
       <data android:host="www.mysite.com" /> 
       <data android:pathPattern="/.*" /> 
      </intent-filter> 
     </activity> 
+0

サンプルURLを貼り付けることができますか?それはあなたのために働いていますか? –

+0

申し訳ありませんが、私のプロジェクトでは、URLはありません。この機能を実装しました。このインテントフィルタを使ってアクティビティを作成するだけで、パスの接頭辞とホストを定義することができます。 –

+0

私は同じを使用していますが、URLをクリックするとブラウザに直接開きます。 –

関連する問題