я попробовал link1, link2, link3, link4, link5, link6Проблема с глубоким связыванием Android! Как использовать собственный URL схемы MyApp: // some_data
Вот все описанное о DeepLinking
Что я хочу обычай URI MyApp:// some_data, открывает собственное приложение, установленное на устройстве, для которого требуется инициализировать приложение some_data.
Существует 2 сценария, в которых можно щелкнуть пользовательский URL-адрес.
1) внутри SMS приложения, когда пользователь нажимает на ссылку она должна автоматически открыть установленный в противном случае открыть магазин googleplay где приложение организовано
2) внутри тела сообщения электронной почты.
Я пробовал все перечисленные выше ссылки, но ни один из них не работает для меня. У меня большая проблема со схемой.
Вот мой AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="MainActivity"
android:label="@string/app_name"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="inderbagga" />
</intent-filter>
</activity>
</application>
и вот MainActivity.java
TextView tvText=(TextView)findViewById(R.id.tvid);
if (getIntent().getAction() == Intent.ACTION_VIEW&&getIntent().getScheme().equals("inderbagga")) {
Toast.makeText(getApplicationContext(), ""+getIntent().getScheme(), Toast.LENGTH_SHORT).show();
Uri uri = getIntent().getData();
// do stuff with uri
tvText.setText(uri.toString());
}
else tvText.setText("NULL");
Чтобы быть более конкретным, я хочу, чтобы открыть собственное приложение когда u url типа inderbagga: // нажата кнопка a1b22c333, либо из приложения sms-приложения, либо из сообщения электронной почты gmail/yahoomail.
, чтобы достичь того же, я использовал фильтры намерения для установки схемы. и getIntent() для чтения данных, равных a1b22c333 в MainActivity.
«Никто из них не работает для меня» - это не очень полезно. «У меня проблема со схемой» - это тоже не очень полезно. Пожалуйста, отредактируйте свой вопрос, чтобы объяснить, в deatil, какие * конкретные * проблемы, с которыми вы сталкиваетесь. – CommonsWare
Вы хотите открыть приложение, набрав URL-адрес в браузере, правильно? – prakash
@commonsware: спасибо за предложение! – inderbagga