如何提供和处理cordova / phonegap应用程序中的深层链接

嗨,我想知道一个cordova/ Phonegap插件或方式来暴露和处理我的Sencha触摸/cordova应用程序中的深层链接

到目前为止,我可以深入链接到其他应用程序可以说打开Goog​​le Play到一个特定的应用程序的详细信息页面。

使用这个插件https://github.com/code4jhon/org.apache.cordova.startapp

所以我想要做的是让其他应用程序在我的应用程序中打开特定的视图或function。 我想支持Android和IOS。

那么底线是否有一个Cordova插件来揭露Android和其他iOS上的活动?

或者如何做到这一点?

看着cordova文档,但没有发现任何东西…任何帮助,文档链接将非常感激。

Solutions Collecting From Web of "如何提供和处理cordova / phonegap应用程序中的深层链接"

你可以试试https://github.com/EddyVerbruggen/LaunchMyApp-PhoneGap-Plugin

它对我来说是完美的。

记得安装后清理/build立

你可以处理实现handleOpenURL的variables

function handleOpenURL(url) { console.log("received url: " + url); } 

有一个新的插件可以处理Android和iOS的通用链接: https : //github.com/nordnet/cordova-universal-links-plugin

我能够使用分支指标来实现这一点。 他们是一个新创业公司,超级棒。

查看他们的cordova插件文档以获得深层链接:

https://github.com/BranchMetrics/Branch-PhoneGap-Cordova-SDK#initialize-sdk-and-register-deep-link-routing-function

我build议阅读他们所有的文档,以了解如何去做。 但是,使用Ionicframework和AngularJS,我build立了一个可以在您的应用程序中使用的服务:

https://gist.github.com/sean-hill/627fa40f96577baae378

在使用Branch的插件构build项目之后,请按照以下步骤进行iOS和Androidconfiguration。

iOS版

将其添加到您的.plist文件中:

 <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>yourappname</string> </array> </dict> </array> 

然后cordova build ios; cordova emulate ios cordova build ios; cordova emulate ios 。 要检查它是否正常工作,请打开您的模拟器,转到Safari并键入yourappname://并查看它是否redirect到您的应用程序。

Android的

在构buildandroid之后将其添加到您的AndroidManifest.xml文件中:

 <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" /> 

然后再次build立,你应该在你的方式来伟大的深度链接成功!

根据@Deminetix请求,这是我如何closures分支会话。

 document.addEventListener("pause", function(){ var branch = window.Branch; branch.closeSession(); }, false); 

玩得开心编码:)

我不认为我们可以使用cordova插件。 整个cordova和插件旨在build立和执行应用程序内的网页和本机代码之间的通信。

在你的情况下,你正试图让其他应用程序在你的应用程序中有深层链接。 这可能只能通过android中的intent-filter和custom-app-url在ios中完成。

appurl.org有一些相当不错的一步一步教程处理自定义url。 看看下面的链接