0

私はAndroidにはまだまだ慣れていて、まだそれを学んでおり、AndroidAnnotationsを使用するプロジェクトがあり、App Linksを実装したいと考えています。Android Appリンクが機能しない、注釈が原因ですか?

私はドキュメント(here)を読んで、ここでもStackoverflowでいくつかの質問を読んでいます。ドキュメント以下

、マニフェスト内のインテントフィルタは、次のとおりです。

<intent-filter android:autoVerify="true"> 
      <action android:name="android.intent.action.VIEW" /> 
      <action android:name="android.intent.category.DEFAULT" /> 
      <action android:name="android.intent.category.BROWSABLE" /> 
      <data android:scheme="http" android:host="real.host.here" /> 
      <data android:scheme="https" android:host="real.host.here" /> 
</intent-filter> 

意図は活動の内部にある、と私が見つけたすべての例と異なる唯一の事は、私の活動は、このようなことです:

<activity 
    android:name=".activities.MainActivity_" ...> 
    <intent-filter...>...</intent-filter> 
</activity> 

AndroidAnnotationsのため、名前は「MainActivity」ではなく「.MainActivity_」です。その横に

、ホストされたassetlinks.jsonは、ここに私のファイルは、HTTPS接続でアクセスされている。

[{ 
    "relation": ["delegate_permission/common.handle_all_urls"], 
    "target": { 
    "namespace": "android_app", 
    "package_name": "com.my.package.name", 
    "sha256_cert_fingerprints":["32:D9:9E:17:2E:C7:B4:82:12:96:C8:3E:D1:51:56:3F:7C:ED:97:69:F9:4A:39:54:4C:7B:AD:8A:AD:27:8F:45"] 
    } 
}] 

SHA256の指紋が、私はアプリのリリースバージョンを構築するために使用する証明書からさ。

私は既に Statement List Generator and Testerツールでテストしており、結果は成功しています。

ちょうど確かに、私はいつも署名されたAPKと電話でテストしています。それはAndroid 6.0です。

私はこの

https://digitalassetlinks.googleapis.com/v1/statements:list? 
source.web.site=https://<domain1>:<port>& 
relation=delegate_permission/common.handle_all_urls 

とデジタル資産のリンクファイルを確認すると、私はこのメッセージを得る:

... "debugString": "********************* ERRORS *********************\nNone!\ ... 

をしかし、私は、このコマンド

adb shell am start -a android.intent.action.VIEW \ 
-c android.intent.category.BROWSABLE \ 
-d "http://<domain1>:<port>" 

をしようとすると、それは、ブラウザを開き、 、アプリではありません。

本当にここで何が間違っているのかを知りたいです。

+0

AndroidAnnotationsを使用しないテストアクティビティを作成し、そのフィルタを追加して試してみてください。これはライブラリーのあまり聞こえないことではありませんが、あまりにも多くの人が深いリンクで試してみるほど一般的ではありません。 –

+0

mainActivityにリダイレクトするだけの空のアクティビティを作成しようとしましたが、動作しませんでした。 (リダイレクトはうまくいきました、App Linksはうまくいきませんでした)。 – BarbaAlGhul

答えて

1

私自身の問題が見つかりました。

は、最初に私が意図-フィルタの内側に、

<action android:name="android.intent.category.DEFAULT" /> 
<action android:name="android.intent.category.BROWSABLE" /> 

<category android:name="android.intent.category.DEFAULT" /> 
<category android:name="android.intent.category.BROWSABLE" /> 

しかし、その後も、それは働いていなかったでなければならないことが分かりました。だから私は本当の問題を見つけました。

こちらをご覧ください:

<data android:scheme="http" android:host="real.host.here" /> 
<data android:scheme="https" android:host="real.host.here" /> 

を問題だった、私のホストはHTTPSプロトコルのみを提供し、私のウェブサイトのためのHTTPはありません。私は "http"データラインを削除した後、それは魅力のように働いた。 AndroidAnnotationsを使用しても問題はありません。

関連する問題