我是Outsystems的新手,我们陷入了一种情况,我们想从我们的本机iOS和Android应用程序中启动Outsystems移动应用程序的特定屏幕。
我们已经使用corodova插件将URL方案添加到Outsystems移动应用程序中。还向我的本机iOS应用添加了LSApplicationQueriesSchemes
。 Android应用仍在开发中。
Outsystems应用程序正在从本机iOS应用程序启动,但是我们需要将其启动到特定屏幕。我们在Outsystems应用中有一个登录页面,我们需要绕过该页面。
我以为outsystems应用必须在URL或深度链接上工作,但看起来并非如此。
你们能帮我吗?即使是一个模糊的想法也将有所帮助。
适用于需要本机代码(Kotlin)来启动Outsystems应用的Android开发人员
val packageName = "in.co.companyname.appname"
val context = getActivity()
val pm = context!!.packageManager
val myAction = Uri.parse("in.co.companyname.appname://Module/Screen?parameter1=para1¶meter2=para2")
// Initialize a new Intent
val intent: Intent? = pm.getLaunchIntentForPackage(packageName)
if(intent!=null){
intent!!.setAction(Intent.ACTION_VIEW)
intent!!.setData(myAction)
context!!.startActivity(intent)
}else{
Toast.makeText(activity!!, "Please install the App", Toast.LENGTH_SHORT).show()
}
适用于iOS开发人员
UIApplication.shared.open(URL.init(string: "in.co.companyname.appname://Module/Screen?parameter1=para1¶meter2=para2")!, options: [:], completionHandler: nil)
答案 0 :(得分:1)
This documentation应该可以帮助...我已经在Android上进行了测试,并且能够成功构造深层链接并将其编码为NFC标签。
短版:深链接是使用以下语法构建的:
<app-identifier>://<module>/<screen>
其中app-identifier是您的应用程序的本机应用程序标识符,模块和屏幕是您要通过深层链接打开的模块和屏幕名称。
由于我没有便携式的iOS设备,因此无法专门在iOS上进行测试。