我正在http://blog.ionic.io/deeplinking-in-ionic-apps/关注如何在Ionic Apps中进行深层链接的教程。我为我的应用安装了插件:
cordova插件添加ionic-plugin-deeplinks - 变量URL_SCHEME = urlISet - 变量DEEPLINK_SCHEME = https --variable DEEPLINK_HOST = urlISet.com
然后我去测试Android版。我做到了 'ion build Android'终端, 然后 终端中的'离子模拟Android'。
模拟器出现后,我将应用程序发送回主页(使应用程序无法清晰对焦),然后返回我的应用程序目录中的终端,我做了教程所要做的测试:
adb shell am start -a android.intent.action.VIEW -d“urlIset://”
应用程序再次成为模拟器中的焦点(预期行为和验证 - 根据教程,它是为Android配置的)。但是,如果我然后在我的模拟器(或任何其他浏览器)中打开chrome并键入地址栏:“urlIset://”然后它不会加载应用程序。它会搜索到URL - 就像找不到它或理解它所以它必须是搜索词。我对深层链接的理解是应该启动应用程序。
我这样做的原因是我必须通过第三方供应商为我的应用程序使用的登录方法需要将应用程序外部的用户重定向到特定URL,并为他们提供返回URL以发送用户一旦他们被核实。例如,我会将用户发送到:
https://www.theverificationsite.com/login?returnURL=urlISet://
我正在尝试将“urlIset://”作为返回URL发送,以便一旦外部网页对其进行身份验证,就可以将它们发送回应用程序。似乎深层链接是实现这种行为的最佳方式 - 尽管我还有其他任何建议。我甚至找不到任何关于深层链接不起作用的帖子,所以我被卡住了。我甚至不确定哪些文件可能对发布以帮助排除故障有用,但如果你问,我可以发帖。似乎终端命令工作的事实,而浏览器中的URL不是一个我错过的一些简单设置的大提示?
这是我的每个请求的android.json文件:
{
"prepare_queue": {
"installed": [],
"uninstalled": []
},
"config_munge": {
"files": {}
},
"installed_plugins": {
"cordova-plugin-console": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"cordova-plugin-device": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"cordova-plugin-splashscreen": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"cordova-plugin-statusbar": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"cordova-plugin-whitelist": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"ionic-plugin-keyboard": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"ionic-plugin-deeplinks": {
"URL_SCHEME": "urlISet",
"DEEPLINK_SCHEME": "https",
"DEEPLINK_HOST": "urlISet.com",
"ANDROID_PATH_PREFIX": "/",
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
},
"cordova-plugin-inappbrowser": {
"PACKAGE_NAME": "com.ionicframework.deeplinkapp2676485"
}
},
"dependent_plugins": {}
}
另外一件事我也应该提一下。我所做的就是创建一个新的空白离子项目,然后安装深层链接。我想知道如何让它在我真正应用到真正的应用程序之前工作。所以,重复它真的很容易。只需创建一个新的空白应用程序(离子启动deeplinkAgain空白),然后根据教程安装深层链接。我使用'urlISet'作为我的'ionichats'。另外,我使用离子版2.1.4。