ios - 向最终用户隐藏 URL 方案的最佳实践

标签 ios objective-c cocoa-touch url-scheme

我想在应用程序中发送短信,这些短信是打开同一应用程序内其他 View 的链接。就像一条通知短信,它有链接到应用程序中的其他 View 。所以解决这个问题的最好方法是插入 URL 方案 myAppName://someQuery?blablabla=123这应该反过来触发 openURL命令并打开该特定 View 。

向最终用户隐藏 url 方案的最佳做法是什么。它看起来很难看,也不想创造最终用户可以将值传递给 url 方案的可能性。

我的选择:

  1. 使用网络链接,打开 Safari,然后返回应用程序。这需要时间。
  2. 使用html标签<a href=myAppName://someQuery?blablabla=123">Test</a> ,但这会影响性能,因为我需要继续将属性文本分配给 textView,而且速度非常慢,而且有问题。

到目前为止,我有最好的选择 2。只是想知道是否还有其他好主意...

感谢帮助

最佳答案

您可以加密您的参数字符串,然后将其作为消息发送

Encrypted URL form:

myAppName://encrypted_query

现在,当您在应用程序中接到电话时,您应该从 URL 中获取 encryptedt_data 并在实际执行任何操作之前对其进行解密。

Decrypted URL form:

myAppName://someQuery?blablabla=123

我相信这是完成此任务的最佳和最简单的方法。对于加密/解密最佳实践,请检查此,AES Encryption for an NSString on the iPhonethis .

只要您不担心安全问题,您总是可以使用减小大小的加密字符串来使 URL 更小。 Github 库中提供了该选项。

关于ios - 向最终用户隐藏 URL 方案的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37083563/

相关文章:

ios - 支持 iOS 和 OSX 的 Podfile

ios - 快速旋转 UIColectionView 时水平滚动

ios - objective-c 全局键字符串?

iphone - 为什么 self.editing 和 self.tableView.editing 工作相同/正常?

ios - 使用来自网络的图像更新 iOS 应用程序

ios - 从详细信息转入后更新 TableView 数据

iphone - 页面 View Controller : Ignoring next/previous page gesture recognizers

objective-c - 基于 Spotlight 搜索的 OSX 应用程序

iphone - 后台线程在 iPhone 3GS 上消耗 100% CPU 导致潜在的主线程

cocoa-touch - 为什么 OpenGL ES 和 cocos2D 比 Cocoa Touch/iOS 框架本身更快?