gpt4 book ai didi

ios - 从网络运行 iOS 应用程序( Angular )

转载 作者:行者123 更新时间:2023-11-30 11:21:24 25 4
gpt4 key购买 nike

我正在开发一个 iOS 应用程序我有一个由 Angular 设计的支付页面

用户点击 ios 应用程序中的付款按钮,我运行一个带有几个参数的 url 页面:

UIApplication.sharedApplication().openURL(NSURL(string:"http://www.testt.com/price/personId/packageName")!)

价格是用户在文本字段中输入的金额,包名称 id 是我应该将其发送到运行我的应用程序的网页(返回到运行该字符串的应用程序)的架构名称,我已在 info.plist 中声明了

然后在支付成功或者不成功之后。单击网站上的“返回应用程序”按钮应返回应用程序。

实际上,Angular 运行我通过 url 发送的 packageName,如下所示:http://packageName://

我尝试通过通用链接来实现此功能,如下所示:packageName://,但由于 url 中的特殊字符而无法打开此链接。我使用编码方法对字符进行编码,但没有成功,因为 url 删除了字符 ://然后我尝试了应用程序站点关联方法,但我遇到无法解析应用程序站点关联文件

所以我有几个问题要问你:

1_有什么技巧可以运行带有特殊字符的网址吗?2_如果你是我你会怎么做?

3_i 也尝试过 apple-app-site-association 但无法解析错误,我对此方法有疑问,此文件如何打开我的应用程序?这样:应用程序链接:http://msite.com ??因为它又包含空格字符

请原谅我最后糟糕的英语

投票之前先跟我谈谈

更新:

    var encodedChars="openMyApp"    //schema name

encodedChars=encodedChars.addingPercentEncoding(withAllowedCharacters:CharacterSet.alphanumerics)!


let url="http://test.com/#/payment/\(id)/\(price!)/\(encodedChars)"


UIApplication.shared.openURL(NSURL(string: url)! as URL)

Angular 代码:

if (this.accounting.packageName === 'openMyApp') {
this.url = this.accounting.packageName + '://';
} else {
this.url = 'http://' + this.accounting.packageName;
}

<a class="btn btn-default" title="" href="{{url}}"></a>

最佳答案

我已经为我的应用实现了自定义网址方案。如果我写这样的东西

myappName://

在 safari 中按 Enter 键,我的应用程序将打开。

我的 Angular + 后端开发人员正在使用这行代码来使用自定义 url 方案打开我的应用程序。他正在按照我可以读取的方案发送参数

this.document.location.href = 'myappname://appname.com/login?name='+id+'&id='+token;

按照这两个简单的步骤操作,希望对您有所帮助。

<小时/>

1.如何实现自定义url方案

Official docs

Helpful link

<小时/>

2.如何使用应用委托(delegate)中的参数处理自定义 URL 方案

在此函数中处理自定义 URL 并读取 appDelegate 中的参数

func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
if let query = url.query {
//that's my logic. yours url may be different
let components = query.components(separatedBy: "=")
print(components)
}

}

如果您需要任何帮助,请告诉我

关于ios - 从网络运行 iOS 应用程序( Angular ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51235376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com