2015-12-14 21 views
3

我開發了一個Apache Cordova上的應用程序,我按照所有步驟生成.apk以在Google Play上上傳。我試過很多次,但谷歌的反應是一樣的:Google Play拒絕科爾多瓦應用程序的原因包含用戶的安全漏洞

我們拒絕APP,封裝ID com.xxx.app,違反了我們的危險產品政策。如果您提交了更新,則前一個版本的 您的應用仍可在Google Play上使用。此應用程序使用軟件 ,其中包含用戶的安全漏洞。以下是您最近提交的 漏洞以及檢測到 的相應APK版本的列表。請儘快升級您的應用程序 ,並增加升級版APK的版本號。 漏洞Apache Cordova:這些漏洞在Apache Cordova v.3.5.1中修復。

我有最新版本的科爾多瓦(5.4.1)。

下面將詳細介紹,我遵循的安裝和項目開發的步驟:

  • 從控制檯啓動的Node.js使用命令NPM安裝-g科爾多瓦下載科爾多瓦。
  • 安裝Java:版本1.8.0_65。
  • 安裝Android SDK。
  • 將Java和SDK添加到PATH。我下載了Android SDK的必需組件。
  • 通過命令創建項目。 (科爾多瓦創建Projectxxxx)。
  • 添加Android平臺。
  • 我將我的應用程序代碼複製到www文件夾中。
  • 添加我的項目所需的插件:splashscreen和sqlite。
  • 我在Android模擬器和其他手機上測試了應用程序。都好。運行完美。
  • 要創建簽名的APK文件,這些步驟如下:

    -Cordova建立--release機器人。 (這在platform/android/build/outputs中生成了android-release-unsigned.apk /apk)。

    - 然後,我生成密鑰庫。

    - 在jarsigner之後。

    - 最後:zipalign。

  • 我將end-app.apk上傳到Google Play。

我的另一個細節是cordova.js生成的版本是4.1.1。但是控制檯版本是5.4.1(命令:Cordova -version)。 我完成了node.js控制檯的所有工作。

嘗試: 我上傳了一個沒有js組件的APK。只有cordova.js,它不起作用。 我再次安裝在新安裝的窗口中,都沒有工作。

我的版本高於3.5.1。我找不到解決方案。

+0

查看第20行附近的platforms-> android-> assets-> cordova.js中的cordova.js版本,您會發現該版本。 – Joerg

+0

嗨,@Joerg。是..是4.1.1。我在描述中提到。 –

+0

您是否正在從服務器加載JavaScript代碼? – Joerg

回答

0

我有同樣的問題,我發現一個插件中以前的corodva版本,在我的情況是Facebook連接;我刪除了這個插件並再次上傳,它的工作形成了我。你可以在你的項目中搜索PLATFORM_VERSION_BUILD_LABEL,可能有些插件有其他的cordova版本。

0

我試圖解決這個問題差不多一個星期。解決方案: www/lib/cordova文件夾中有一個cordova.js文件,在更新cordova和離子時不會更新。打開文件並查找var PLATFORM_VERSION_BUILD_LABEL。如果在本文發佈時版本不是4.1.1,請使用主目錄中某個文件的另一個副本進行更新。

1

最大的問題不僅在於PLATFORM_VERSION_BUILD_LABEL是錯誤的,而是使用的默認cordova是古老的(它是我的3.7.1)。要解決此問題,您需要在項目中安裝較新的版本。你可以在命令行上指定它,就像npm一樣。

cordova platform update [email protected] 

或者你可以在你的config.xml

<engine name="android" version="4.1.1" /> 

這可能會根據您當前安裝科爾多瓦是需要的,而不是「版本」「規範」指定。此時,它們達到5.1,並且您可以使用「最新」而不是特定的版本號。

下一個令人頭疼的問題將是修補程序的關鍵點,它會鎖定網絡訪問。我現在正在對我們服務器的所有ajax調用中發生404錯誤。訪問是安全問題的根源,所以這不是一個大驚喜。我仍在爲此努力。

相關問題