Android-SDK 버전 23 업데이트 후 ACTION-VIEW 인 텐트 필터를 사용하여 하나 이상의 활동 추가


305

AndroidManifest.xml에 다음 도구 설명이 표시됩니다 .

Google 검색에서 앱을 색인 할 수 없습니다. ACTION-VIEW 인 텐트 필러로 하나 이상의 활동 추가를 고려하십시오. 자세한 내용은 이슈 설명을 참조하십시오.

앱을 Google 색인으로 가져오고 Google 검색에서 앱을 설치하고 트래 피킹하기위한 딥 링크를 추가합니다.

여기에 이미지 설명을 입력하십시오

누구나 왜 그렇게 설명 할 수 있습니까?


그것을 실제로 보려면 여기를 참조하십시오 : stackoverflow.com/questions/56631387/…
user1506104

답변:


239

공식 문서에서 :

Google이 앱 콘텐츠를 크롤링하고 사용자가 검색 결과에서 앱을 입력 할 수있게하려면 앱 매니페스트의 관련 활동에 대한 의도 필터를 추가해야합니다. 이러한 의도 필터를 사용하면 모든 활동의 컨텐츠에 딥 링크 할 수 있습니다. 예를 들어, 사용자는 딥 링크를 클릭하여 사용자가 검색하는 제품 오퍼링을 설명하는 쇼핑 앱 내의 페이지를 볼 수 있습니다.

이 링크 사용 사용 앱 콘텐츠에 딥 링크를 활성화 하면 사용법을 알 수 있습니다.

테스트를 사용하여 앱 인덱싱 구현 테스트 방법을 테스트하십시오.

다음 XML 스 니펫은 딥 링크를 위해 매니페스트에 인 텐트 필터를 지정하는 방법을 보여줍니다.

<activity
    android:name="com.example.android.GizmosActivity"
    android:label="@string/title_gizmos" >
    <intent-filter android:label="@string/filter_title_viewgizmos">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
        <data android:scheme="http"
              android:host="www.example.com"
              android:pathPrefix="/gizmos" />
        <!-- note that the leading "/" is required for pathPrefix-->
        <!-- Accepts URIs that begin with "example://gizmos” -->
        <data android:scheme="example"
              android:host="gizmos" />

    </intent-filter>
</activity>

Android Debug Bridge를 통해 테스트하려면

$ adb shell am start
        -W -a android.intent.action.VIEW
        -d <URI> <PACKAGE>

$ adb shell am start
        -W -a android.intent.action.VIEW
        -d "example://gizmos" com.example.android

5
@ USER25 방식은 URI 계획이며, 방식은 HTTP, HTTPS, FTP 등을 할 수 있습니다
Bhargav

89
특정 앱의 경우이 모든 것이 잘 표시되는 이유는 무엇입니까? 모든 앱이이를 필요로하는 것은 아니며 일부 앱은 일부 사이트의 웹뷰가 아닙니다. 구글은 너무 짜증나 ..
user924

64
도구를 사용하여 어쨌든 억제 할 수 있습니다 : ignore = "GoogleAppIndexingWarning"
ecle

12
경고에 인 ACTION-VIEW텐트 필터 가 필요 하지만 솔루션에는 관련이 있다고 궁금합니다 action.VIEW. 마찬가지로 Android Studio에서 링크를 따라 가면 ACTION-VIEW표시되지 않는 웹 페이지로 이동 합니다. 눈에 거슬리는 경고로 할 수있는 최소한의 정보는 정확한 메시지와 도움말 페이지를 제공하는 것입니다.
John Perry

7
@ecle이 옵션을 어디에 넣습니까? / 신경 쓰지 마; 나는 그것을 발견 한 추가가 xmlns:tools="http://schemas.android.com/tools"받는 manifest다음, 태그 추가 tools:ignore...받는 application태그입니다.
John Perry

190

<intent-filter>내부에 아래 코드를 추가하여 경고를 제거 할 수 있습니다<activity>

<action android:name="android.intent.action.VIEW" />

6
이 일은 나를위한 것입니다. 나는 이것이 내가 찾고있는 대답이라고 생각합니다.
Mahmudur Rahman

13
앱 인덱싱을 사용하지 않으려는 경우 올바른 해결책으로 보입니다. 를 통해 경고를 삭제하는 대신 tools:ignore="GoogleAppIndexingWarning". 나는 <action android:name="android.intent.action.MAIN" />주요 활동에서 형제로 추가했습니다 .
Daniel F

4
그러나 왜 우리는 코드 에서이 라인을 맹목적으로 필요합니까? 특별한 이유가 있습니까?
Ghanshyam Nayma

15
@GhanshyamNayma이 줄을 추가하면 경고가 제거됩니다. 실제 앱 인덱싱을 추가하는 데 필요한 추가 코드가 없습니다. 정확히 모범 사례는 아니지만 경고가 성가신 것으로 알고 있습니다. tools:ignore="GoogleAppIndexingWarning"빈 ACTION_VIEW를 추가하지 않기 때문에 대신에 갈 것 입니다. 문제가되지는 않지만 항상 안전을 원합니다.
카슨 J.

8
아 그래서이게 ACTION_VIEW에 너무 많은 랜덤 앱이 나타나는 이유입니다 ... eesh
CCJ

135
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.app"
tools:ignore="GoogleAppIndexingWarning">

당신은 추가하여 경고를 제거 할 수 있습니다 xmlns:tools="http://schemas.android.com/tools"tools:ignore="GoogleAppIndexingWarning"받는 <manifest>태그입니다.


3
이것은 나를 위해, 그리고 내가 찾고있는 솔루션을 정확하게 작동시킵니다.
Sayan Sil

이것은 완벽한 솔루션입니다.
Rudra

4
구글이 앱을 인덱싱 할 수 없기 때문에 완벽한 솔루션은 아닙니다. 무언가를 무시함으로써 그 문제를 극복하려고 노력해야합니다.
Pratik Butani 2016 년

AppStore에서 @PratikButaniAndroidDev 인덱싱은 주로 앱 개발을 시작하는 많은 개발자에게 우선 순위가 아닙니다.
Maher Abuthraa

25

이 의도 필터를 앱 매니페스트에 선언 된 활동 중 하나에 추가하면이 문제가 해결되었습니다.

<activity
    android:name=".MyActivity"
    android:screenOrientation="portrait"
    android:label="@string/app_name">

    <intent-filter>

       <action android:name="android.intent.action.VIEW" />

    </intent-filter>

</activity>

나는 이것을 가지고 있지만 intent.action.MAIN으로 사라지지 않았다.
C. Skjerdal 2012 년

android.intent.action.VIEW로 설정되어 있는지 확인해야합니다.
Oladipo Olasemo

1

이 솔루션은 작동합니다.이 경고를 무시하려는 경우

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    tools:ignore="GoogleAppIndexingWarning"
    package="com.example.saloononlinesolution">
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.