getReferrer, когда действие открывается намерением, возвращает ноль - PullRequest
0 голосов
/ 18 октября 2018

У меня есть действие, у которого есть это намерение в манифесте:

<activity
    android:name=".view.MainActivity"
    android:launchMode="singleTask"
    android:screenOrientation="portrait">
    <intent-filter>
        <data android:scheme="http" android:host="mc8.eu"/>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.BROWSABLE"/>
        <category android:name="android.intent.category.DEFAULT"/>
    </intent-filter>
</activity>

Если я получаю SMS с этой схемой, действие открывается правильно, если я нажимаю на URL.

Мне нужно понять, открывается ли действие намерением или другим действием приложения.

Я пытался с этим кодом:

@Override
protected void onResume() {
    super.onResume();

    Uri ref = getReferrer();
}

Но getReferrer всегда возвращает ноль.

1 Ответ

0 голосов
/ 18 октября 2018

Как только система начинает вашу деятельность через фильтр намерений, вы можете использовать данные, предоставленные Намерением, чтобы определить, что вам нужно визуализировать.Вызовите методы getData () и getAction () для извлечения данных и действий, связанных с входящим намерением

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Intent intent = getIntent();
    String action = intent.getAction();
    Uri data = intent.getData();
}

Документация Android

...