2015-05-30 3 views
4

В нашем приложении для Android есть одно основное действие. Все последующие экраны были реализованы как фрагменты.Индексирование приложений для приложений с одним основным видом деятельности

Мы пытаемся внедрить индексирование приложений с помощью руководства по разработке Google. Однако, поскольку существует один основной вид деятельности, индексируется только домашний экран. Мы также пытались обрабатывать входящие намерения на уровне фрагмента, а не на уровне активности, но он по-прежнему не работает.

Кто-нибудь успешно реализовал индексацию приложений для приложений с несколькими фрагментами вместо нескольких действий? Любая помощь была бы оценена

Thanks

+0

, к чему вы руководствуетесь разработчиками? – pskink

+0

Возможно, это упоминаемое руководство: https://developers.google.com/app-indexing/android/publish – yuval

ответ

2

Это должно сработать. Вот как я представляю ваше приложение:

  1. Ваш манифест имеет фильтр намерений, который отправляет глубокие ссылки на ваш MainActivity.
  2. MainActivity захватывает намерения, когда активность начинается или возобновляется.
  3. Если целью, которое запустило MainActivity, является VIEW_ACTION, тогда глубокая ссылка анализируется из полезной нагрузки данных, а фрагмент визуализируется с содержимым для этой глубокой ссылки.
  4. В методе onStart() для фрагмента вы вызываете API индексирования приложений, чтобы зарегистрировать start() вида.
  5. Когда пользователь переходит от этой страницы вашего приложения, отображается другой фрагмент.
  6. В методе onStop() для вашего глубоко связанного фрагмента убедитесь, что вы вызываете API индексирования приложений для регистрации end() вида.

Обратите внимание, что эти последние несколько шагов требуются, чтобы фрагмент знает оригинальный глубокий ссылка URI, который был принят в MainActivity так что вам нужно, чтобы убедиться, что этот фрагмент имеет обратную ссылку на этот URI.

Смежные вопросы