小编Che*_*glu的帖子

Branch.io:如何在iOS中切换实时环境和测试环境

正如Branch在其文档中所说:

对于更高级的实现,您可能希望为测试和实时环境指定密钥(例如,如果要构建自定义开关以根据编译器方案自动选择正确的密钥).

在Xcode中打开Info.plist文件,将branch_key条目更改为Dictionary,并为您的键创建两个子条目:

我的问题是:如何根据编译器方案构建自定义开关以自动选择正确的密钥?我知道我可能会使用#if DEBUG来定义环境,但我不明白我在哪里告诉分支应该使用哪个密钥?或者分支机构会自动检测它?

非常感谢![plist文件中分支配置的屏幕截图

deep-linking ios branch.io

4
推荐指数
2
解决办法
1985
查看次数

Swift:字符串url编码无法按预期工作

所以我有一个这样的网址:

let remoetURL = "http://xxx-test.img-cn-hangzhou.aliyuncs.com/materials/talk_-XXXXX-XXXXXXX/STEM RULE.pdf"
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,在url的末尾,有一个空格,所以我需要摆脱它以获得一个有效的编码网址.

做了一些研究后,我意识到我可能会用

let escapedString = remoteURL.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLPathAllowedCharacterSet())
Run Code Online (Sandbox Code Playgroud)

但是这并没有返回预期的工作URL,因为它也在"http"之后编码":"

http%3A//xiaobandeng-staging.img-cn-hangzhou.aliyuncs.com/talk_materials/talk_-K4yjX4-238Ku74WVIJk/STEM%20RULE.pdf
Run Code Online (Sandbox Code Playgroud)

我也试过了URLHostAllowedCharacterSet,但没有运气.所以我想知道是不是因为我这里没有www,所以它无法正确识别哪个部分是主机.如果是这样,那么优雅的解决方案是什么?我知道我可以通过调用stringByReplacingOccurrencesOfString来替换%20的空格,但这似乎有点脆弱.

先感谢您.

url ios swift

4
推荐指数
1
解决办法
5981
查看次数

标签 统计

ios ×2

branch.io ×1

deep-linking ×1

swift ×1

url ×1