2017-02-23 117 views
21

我在PlayStore上有一個現有的應用程序。我正在發佈新版本的應用程序分階段發佈。但是,由於「完全隱藏的APK」錯誤,我無法發佈該應用。谷歌播放 - 完全陰影apk

Fully shadowed APK error

到目前爲止,我還沒有發現任何文件,至於如何解決這個錯誤。其他人面對這個?

+0

可能是版本代碼舊版本比較Play商店中的版本code.check兩個版本的代碼 – Hanuman

+0

@Hanuman我三重檢查這一點。版本代碼和版本號都更大。 –

回答

6

更新: - 與Google Play控制檯團隊的Google員工就此問題進行了對話。我當時的一個誤解是,如果你想分階段推出,你需要保留一個APK。我與他討論過這件事,他澄清說這不是必要的。即使在分階段發佈時,如果沒有保留的APK,Google play也會爲訪問應用頁面的用戶顯示安裝選項。希望這可以解決面臨類似問題的人的疑慮。

我有同樣的問題,我沒有點擊以前版本的「保留」,並上傳了一個新的,然後「開始滾動」按鈕變成可點擊和完成修復!^_^

+2

這就是我們現在的工作,希望能有更好的解決方案被人知道,這感覺就像一個黑客而不是解決方案。 –

+0

哪個頻道?生產/ beta/alpha? –

+1

我看到這是公認的答案,但我不明白你實際上做了什麼來使它工作。不要點擊以前版本的「保留」是什麼意思?你在哪裏看到這個'保留'選項?我去我的應用程序發佈,瀏覽一個apk,上傳它然後審查,我看到錯誤。我沒有獲得保留或任何地方不保留選項。 –

6

注意:此解決方案適用於發佈的時間,如果將來無法正常工作,請不要認爲它是錯誤的,因爲事情隨時間而改變。

您必須在上傳適用於我的新APK時停用以前的版本。只需停用以前的版本並上傳一個新的APK並將其推出以進行製作。

在您的發行經理
+0

作爲最後的手段,我做到了這一點,它的工作。不過,我想要有一個我不能做的分階段推出。關於這個錯誤的任何想法? –

+0

我認爲他們現在只允許一個活動的APK,它是最新版本的代碼,或者可能是它的一個bug,但我不認爲它是一個最可能只限於一個bug的bug單次活動APK一次。 –

+0

我明白,但在這種情況下,分階段推出工作將如何進行?分階段發佈要求應用的舊版本在Play商店中處於活動狀態,不是嗎? –

1

你看到你的最後上傳的APK,並在您的APK你看到這個詞保留點擊它向下滾動頁面,那麼你看到停用選項,然後點擊它然後再上傳新的apk第n保存到草稿並檢查它然後推出,然後等待。

14

Play控制檯有一個錯誤,這就是爲什麼它不起作用。這是解決方法:

說,你有兩個版本:

  1. Beta版:29
  2. 阿爾法:以前的版本29,但現在是空的:「晉升爲測試版」它說。你要上傳的版本30

那麼做到這一點:

  1. 創建一個新的Alpha測試版,版本30,並停用之前的APK。當您嘗試將其展開時,它會發生錯誤全屏陰影APK。
  2. 回到頁面,現在刪除版本30.將選擇版本29,單擊保存並開始滾出到Alpha。這隻會失效29.
  3. 爲30創建一個新的Alpha版本,它現在應該工作。
+0

大聲笑,我們面臨同樣的問題,並做了同樣的..和問題解決。 似乎玩商店發佈管理器有一些錯誤 –

6

對我來說,它的工作方式如下:

  • 首先發送一個推出僅要停用的版本。
  • 其次,發佈您想要發佈到Beta的版本。

似乎在某些情況下Google Play無法同時處理停用和發佈。

+0

這是我的情況,謝謝! – Starwave

+0

也爲我工作。一個主要的問題是錯誤消息是非常無益的。而且我也沒有在幫助部分看到這一點。最重要的是,我不得不將我的瀏覽器切換到英文,以便錯誤消息可搜索...嘆... – user3533716

+0

我實際上寫了支持,讓他們知道錯誤,他們告訴我它已發送給團隊。是否會導致修復,不能說。 – kikoso

3

這裏遇到了同樣的問題,最有可能是新發布管理器帶來的問題。

感覺就像之前的版本(已經在prod中的版本)以某種方式卡在alpha中,阻止了新版本的推出。

谷歌支持聯繫並等待 分辨率(我的工作與+ 25millions下載一個應用程序,這個問題真的是什麼大不了的事情,希望谷歌會照顧它真的很快)

在此期間,我們從未使用過測試版頻道,所以我們通過使用它來解決了我們的問題。

+0

我們遇到同樣的問題 - 但我們通常會上傳到測試版然後發佈到產品。升級到生產現在無法正常工作,並顯示「Fully Shadowed apk」錯誤。我已經上傳到了alpha版 - 現在等了20分鐘,看看我是否可以將它推廣到生產版(這實際上是一個PITA,因爲我們的QA是在beta版頻道上設置的,我不想花時間設置alpha頻道現在) –

+0

從Alpha通道推廣到生產似乎已經奏效。希望測試版頻道不會長久保留FUBAR'd –

+0

我們一直在等待Google支持的答案,現在已經有數週了,希望您能有更好的運氣。如果您找到永久性解決方案,請更新答案。 –

0

我們遇到了這個問題以及拆分APK。我們分配的版本代碼爲每個ABI具有以下gradle這個(簡體):

ext.abiCodes = ['universal': 0, 'arm64-v8a': 1, 'armeabi-v7a': 2, 'x86': 3, 'x86_64': 4, ...] 

android { 

    applicationVariants.all { variant -> 

    variant.outputs.each { output -> 
     def abiName = output.getFilter(OutputFile.ABI) 
     def abiVersionCode = project.ext.abiCodes.get(abiName) 

     output.versionCodeOverride = variant.versionCode * 100 + abiVersionCode 
     ... 

隨着我們將這些APK:

| ABI  | Version Code | 
|-----------|--------------| 
| universal | v100   | 
| arm64-v8a | v101   | 
| arm64-v7a | v102   | 
| ...  | ...   | 

而我們得到的APK V101這個「完全盯梢APK」錯誤。原因是任何位於arm64-v8a的設備都可以安裝v102,因爲它是向後兼容的。

將版本代碼armeabi-v8a高於arm64-v7a後問題解決。

ext.abiCodes = ['universal': 0, 'arm64-v7a': 1, 'armeabi-v8a': 2, 'x86': 3, 'x86_64': 4, ...] 

您應該留意這一點。

+0

你是否可以上傳一個支持X abis的通用apk,如果你還有X個支持一個abi的機器人?我必須將無用的armeabi包含在我的通用中,但不能將其拆分,以包含沒有完全隱藏的錯誤的通用。 – sbaar

+1

@sbaar是的,這就是我們爲我們的版本所做的。我們包括通用和分裂的apks。 –

+1

@sbaar這裏是我們的Gradle文件的更完整版本,不知道它是否有幫助:https://stackoverflow.com/a/44359115/1035008 –

0

確保Google Play控制檯中存在某種錯誤。在我們的案例中,我們直接在Production中上傳了新的APK。點擊「審查」按鈕引導到「完全隱藏的apk」錯誤消息。

然後,我們已經做了的APK以下的,我們希望發佈和上傳的草案中生產:

  1. 從生產中刪除它。

  2. 將其上傳至Beta版,然後將其刪除。

  3. 將其上傳到Alpha然後將其刪除。

  4. 在生產中再次上傳。

在最後一步之後,錯誤消息不再出現。目前還不清楚哪些步驟有助於解決問題。可能僅僅是刪除並重新上傳就足夠了,但我無法確定,因爲我無法再重現它。

祝你好運!我們都需要它在這種情況下:)

4

我有完全相同的問題,並通過在config中使用以下versionCode條目解決它。XML:

<widget id="io.cordova.hellocordova" 
    version="3.1.1" 
    android-versionCode="3001001" 

這裏Android系統的versionCode是至關重要的。它必須是一個整數大於與您上傳的最後一個APK關聯的數字。由於某種原因,我之前的版本在創建一個未被注意的更高數字之間有一個額外的零。由於我無法改變這種情況,因爲它發佈了我在新版本代碼中添加了一個零,並將其替換爲3001001而不是300101.

完美工作。

希望有所幫助。

+0

這解決了與我的離子應用程序相同的問題!謝謝:) – wander

0

它說 - 其他APK具有更高版本的代碼。所以你可能有一個發佈的APK,它的版本碼比你的新APK要高。因此,請將您的新APK增加到更高的數字。您可以在Android控制檯上看到您的其他APK版本代碼。和更改您的​​3210在widget部分

<widget android-versionCode="999" id etc...> 
+0

情況並非如此,問題在於我們保留了apk的較舊版本,導致新APK發佈問題。當被問到在Google Play團隊工作的Google員工這件事時,他們建議不要保留舊版本的SDK,除非舊版本與當前版本有一些硬件/軟件差異。它的目標是比新APK更多/更少的設備。 –

+0

您的錯誤表示版本中的其他APK具有更高的版本代碼。如果這不是問題,那麼發佈不正確的錯誤就毫無意義。您必須保留一個APK,否則只有一個版本,因此只有一個版本代碼。保留的apk造成的問題是,舊版APK的版本號比新版APK要高。這就是你的錯誤所說的。 Google Play的答案並未解決錯誤,只是停止顯示,因爲只有一個APK,因此沒有更高版本的代碼。要麼這是答案,要麼是Google的錯誤對你說謊 – Jon

+0

正如我所說的,我跟一個Google員工談過,他接受錯誤信息令人困惑。他告訴我他會記下這個問題,並簡單說明這個信息,不知道這是否完成。正如你會看到許多其他答案一樣,這是Play商店的一個bug,而不是應用程序版本問題,如果你看到消息的綠色部分,你會看到v31正在上傳,但v30是它的陰影。讓我知道是否仍然存在混淆。 –