从本机iOS和Android应用启动到OutSystem移动应用的特定屏幕

时间:2019-06-04 13:09:46

标签: android ios outsystems

我是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&parameter2=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&parameter2=para2")!, options: [:], completionHandler: nil)

1 个答案:

答案 0 :(得分:1)

This documentation应该可以帮助...我已经在Android上进行了测试,并且能够成功构造深层链接并将其编码为NFC标签。

短版:深链接是使用以下语法构建的:

<app-identifier>://<module>/<screen>

其中app-identifier是您的应用程序的本机应用程序标识符,模块和屏幕是您要通过深层链接打开的模块和屏幕名称。

由于我没有便携式的iOS设备,因此无法专门在iOS上进行测试。