Как перейти по ссылке с сайта на приложение для Android - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть сайт, который в основном используется мобильными пользователями.Я хочу сделать ссылку с веб-сайта на отдельное приложение, которое затем должно открыться на телефоне (приложение уже установлено)

Для приложения я ввел следующую схему:

 <variable name="URL_SCHEME" value="alfix_smart" />
    <variable name="DEEPLINK_SCHEME" value="https" />
    <variable name="DEEPLINK_HOST" value="domain.com" />
    <variable name="ANDROID_PATH_PREFIX" value="/" />
    <variable name="ANDROID_2_PATH_PREFIX" value="/" />
    <variable name="ANDROID_3_PATH_PREFIX" value="/" />
    <variable name="ANDROID_4_PATH_PREFIX" value="/" />
    <variable name="ANDROID_5_PATH_PREFIX" value="/" />
    <variable name="DEEPLINK_2_SCHEME" value="https" />
    <variable name="DEEPLINK_2_HOST" value="www.domain.com" />

как мне теперь связать кнопку сайта с приложением?Что я должен сделать для этого?К сожалению, я понятия не имею.

Я надеюсь, что вы можете мне помочь

1 Ответ

0 голосов
/ 03 декабря 2018

• Если вы хотите работать с глубокими ссылками в Android и iOS, рекомендуется использовать Динамические ссылки Dynamic Links вы одинаково относитесь ко всем платформам, таким как Android, iOS и веб.Он беспрепятственно переносит пользователей с вашего мобильного веб-сайта на эквивалентный контент в вашем приложении.Чтобы увидеть пример его использования, обратитесь к this и this .

• Если вы хотите обрабатывать глубокие ссылки только в Android (и приложение уже установлено, как выв простейшем подходе ( Deep Links ), вы можете представить Activity в качестве обработчика определенного шаблона URL s и передать нужные параметры в виде URL параметров запроса.

Чтобы увидеть подробности его использования, обратитесь к this .

В AndroidManifest.xml

<activity android:name=".YourActivity">

    <intent-filter>
        <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 "https://example.com" -->
        <data android:host="example.com" />
        <data android:scheme="https" />
    </intent-filter>

    <intent-filter>
        <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 "https://www.example.com" -->
        <data android:host="www.example.com" />
        <data android:scheme="https" />
    </intent-filter>

</activity>

В YourActivity.java:

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

    Intent intent = getIntent();
    String action = intent.getAction();
    if(action.equals(Intent.ACTION_VIEW)){
        Uri data = intent.getData();
        if (data.getQueryParameter("some_param") != null && data.getQueryParameter("some_param").isNotEmpty()) {

            String param = data.getQueryParameter("some_param");
            // do what you want to do with param
        }
    }
}

Ваш HTML-фрагмент:

<a href="https://example.com?some_param=some_value">Click Me!</a>
...