我们已经构建了一个iOS应用程序,我们将把它提交给App store。在我们的应用程序内部,我们对网络服务的网址进行了硬编码
我们的客户希望做这样的事情。
对于审核,他希望将该URL设置为开发中的web服务,并在批准后将其更改为生产。因为他不想在生产数据库中创建虚假账户和数据。
在不更改我们的代码的情况下,是否有任何设置或某些事情需要批准。
由于
答案 0 :(得分:1)
对应用中的特定网址进行硬编码。然后设置您的Web服务器,以便将URL重定向到" real" URL。在应用程序进入商店之前,请将URL重定向到开发URL。一旦您的应用获得批准并上线,请更改网址以重定向到生产网址。
这基本上是网络服务器配置文件中的单行更改。
如果您需要在每次提交更新时重复此过程,这会变得有点棘手。您可能希望对更新的审核返回到开发URL。这可能要求您将版本号作为URL的一部分传递(无论如何,如果URL的API随时间发生变化,您应该这样做。)
答案 1 :(得分:0)
您可以检查应用程序是否在AppStore中。请查看此答案以获取更多信息:https://stackoverflow.com/a/17627239/2604030
答案 2 :(得分:0)
我希望你还没有在那里硬编码密码。
但是,除非这是一项非常长期,强大的服务,否则硬编码数据库服务器细节也有点危险。
考虑将它们写入NSUserDefaults但具有故障转移服务。
例如,如果服务器没有响应,则可以使用不同的服务器来获取新的数据库服务器地址。
这将允许您设置测试服务器,在审核后将其终止,并让新用户转到新服务器。
另一种方法是,如果您有办法将通知推送到设备或进行状态检查,请为该检查消息添加额外的元数据,以便您可以将更新传递给服务器地址。
查询单独的服务器以获取重要元数据是一种常见技术 - 它可以让您具有一定的灵活性并对紧急情况做出响应。
答案 3 :(得分:0)
为什么不只是KISS并在NSUserDefaults或plist中设置URL(即validation = URL1,validated = URL2或其他)。这样,您的URL就是基于配置的,而不是嵌入在您的代码中。您可以在代码中使用Sebyddd的响应来确定您在运行时获取的URL