2016-09-29 31 views
4

首次嚮應用商店提交應用程序。應用程序審查 - 指向dev api而不是prod

按iTunes Connect中:

「模擬帳戶需要使用的應用程序的所有功能」

...這是我的應用程序的情況。

我想讓這個模擬賬戶指向dev api,但是其他的一切都指向了prod api。

我的應用程序是基於Cordova的,並且api url通過常量注入到相關的http服務中。我正在使用grunt,並且擁有grunt prod/grunt dev等命令,它們使用ngconstant生成一個模塊,併爲運行的命令生成api url,即dev dev api url常量的grunt dev。

我想過硬編碼一個用戶名和過分/重新定義URL常量,因爲它似乎有點possible儘管不推薦(是一個常數和所有)。 - 我無法在任何情況下讓這個工作。

所以...

有沒有人知道如何解決這個問題?

如果應用程序最初與dev api url一起提交,然後被審覈並接受,然後重新提交prod api〜是另一個完整的審查要求?

+0

你可以推動javascript更新,而不必經過審查 – charlietfl

回答

4

我想讓這個模擬賬戶指向dev api,但其他的一切都指向prod api。

如果你想要這種行爲,你必須實現它,我不認爲有其他解決方案。

在客戶端

  • 實現使用自定義屬性來切換環境。該屬性在應用程序啓動時從後端下載,並影響所有應用程序流程。
  • 實現自定義重定向測試用戶(硬編碼壞的解決方案)如果用戶是測試用戶,指向開發環境的API在服務器端

    實現。 Apple驗證後,您可以刪除此檢查並從數據庫中刪除測試用戶帳戶。

  • 驗證期間將您的prod環境重定向到開發環境。然後在Apple驗證後刪除此重定向。

我認爲服務器端解決方案是最好的,因爲您可以隨時進行更改。請記得在提交之前從iTunes連接中檢查「手動發佈應用程序」標誌以還原所需的更改。

如果應用程序最初與dev api網址一起提交,那麼審查並接受然後重新提交prod api〜是另一個完整的審查要求?

是的,如果你想上傳一個新的版本,需要一個新的應用程序審查。基本上你是在起點。

+0

謝謝lubilis,多麼痛苦! – Hurricane

+0

@Hurricane通常我這樣做有不同的plist文件。每個包含端點URL。每個plist都是爲dev,stage,qa等特定對象設置的... – Honey

2

經審覈的應用程序需要被視爲生產應用程序。提交的應用程序必須指向您的生產服務器/ URL,因爲這是最終會在App Store中的應用程序。

如果您希望審覈流程擊中開發API,您唯一的選擇是提交您的應用並指定您在獲得批准後手動發佈應用。

然後,您將您的生產服務器(由應用程序訪問的服務器訪問的服務器)設置爲使用您的開發API /環境。一旦應用程序獲得批准(但尚未在App Store中),您將更新生產服務器以使用生產API /環境。然後你將應用發佈到商店。

請記住,這隻適用於您的應用程序的初始版本。您無法執行任何應用更新。

+0

感謝您的回答rmaddy – Hurricane

相關問題