Привет Я хотел бы узнать о подключаемом модуле Cordova / Phonegap или способе предоставления и обработки глубоких ссылок в моем приложении Sencha Touch / Cordova
Пока что я могу использовать глубокие ссылки в других приложениях, скажем, открыть Google Play на странице сведений о конкретном приложении.
Используя этот плагин https://github.com/code4jhon/org.apache.cordova.startapp < / а>
Итак, я хотел бы позволить другим приложениям открывать определенные представления или функции в моем приложении. Я хотел бы поддерживать Android и IOS.
Итак, есть ли плагин Cordova для отображения действий для Android и их аналогов на IOS?
Или как этого добиться?
Заглянул в документы Кордовы, но ничего не нашел ... любая помощь, ссылка на документ будет очень признательна.
4 ответа
Вы можете попробовать https://github.com/EddyVerbruggen/LaunchMyApp-PhoneGap-Plugin
У меня это сработало отлично.
Не забудьте очистить / построить после установки
Вы можете обрабатывать переменную, реализующую handleOpenURL
function handleOpenURL(url) {
console.log("received url: " + url);
}
Есть новый плагин, который обрабатывает универсальные ссылки как для Android, так и для iOS: https://github.com / nordnet / cordova-universal-links-plugin.
Я смог добиться этого с помощью Branch Metrics. Это новый стартап и супер фантастический.
Ознакомьтесь с их документами по плагину Cordova для глубоких ссылок здесь:
Я рекомендую прочитать все их документы, чтобы понять, что делать. Однако с помощью Ionicframework и AngularJS я создал службу, которую вы можете использовать в своем приложении:
https://gist.github.com/sean-hill/627fa40f96577baae378
После создания проекта с помощью подключаемого модуля Branch выполните следующие действия для настройки iOS и Android.
IOS
Добавьте это в свой файл .plist
:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>yourappname</string>
</array>
</dict>
</array>
Тогда cordova build ios; cordova emulate ios
. Чтобы проверить, работает ли он, откройте свой эмулятор, перейдите в Safari, введите yourappname://
и посмотрите, перенаправляется ли он в ваше приложение.
Android
Добавьте это в свой файл AndroidManifest.xml
после сборки Android:
<intent-filter>
<data android:scheme="yourappname" android:host="open" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
Добавьте это в свой файл config.xml
:
<preference name="AndroidLaunchMode" value="singleTask" />
Затем создайте снова, и вы должны быть на пути к огромному успеху в области глубинных ссылок!
По запросу @Deminetix я закрываю сеанс Branch.
document.addEventListener("pause", function(){
var branch = window.Branch;
branch.closeSession();
}, false);
Получайте удовольствие от кодирования :)
Я не думаю, что мы можем использовать для этого плагины Cordova. Вся кордова и плагины предназначены для установления и выполнения связи между веб-страницей и собственным кодом в приложении.
В вашем случае вы пытаетесь разрешить другим приложениям иметь глубокие ссылки в вашем приложении. Это можно было сделать только с помощью фильтра намерений в android и custom-app-url в ios.
appurl.org содержит довольно приятное пошаговое руководство по обработке пользовательских URL-адресов. Взгляните на следующие ссылки
Похожие вопросы
Связанные вопросы
Новые вопросы
android
Android — это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфонов, планшетов, автомобилей, телевизоров, одежды, очков, IoT). Для тем, связанных с Android, используйте теги, специфичные для Android, такие как android-intent, android-activity, android-adapter и т. д. Для вопросов, отличных от разработки или программирования, но связанных с Android framework, используйте эту ссылку: https://android .stackexchange.com.