2015-05-09 52 views
3

我正在研究Meteor和Cordova應用程序。我正在努力獲得熱代碼推送工作,並剛剛添加appcache和autoupdate包。在瀏覽器中查看Appcache和autoupdates時正在運行,但是當檢測到更改並且自動更新未發生時,cordova應用似乎無法加載manifest.json(/__cordova/manifest.json)文件。Meteor/Cordova應用程序無法下載manifest.json以與自動更新一起使用。出了什麼問題?

這裏是日誌消息,我得到當設備運行:

2015-05-09 09:21:41.326 Feminology[24781:5945164] METEOR CORDOVA DEBUG (autoupdate_cordova.js) Failed to download the manifest null <!DOCTYPE html> 
<html manifest="/app.manifest"> 
<head> 
    <link rel="stylesheet" type="text/css" class="__meteor-css__" href="/2c924c2df11aded4c2ddedd0919c5c00ab919f5f.css?meteor_css_resource=true"> 


<script type="text/javascript">__meteor_runtime_config__ = JSON.parse(decodeURIComponent("%7B%22meteorRelease%22%3A%22METEOR%401.1.0.2%22%2C%22ROOT_URL%22%3A%22https%3A%2F%2Ffeminology-app-staging.herokuapp.com%2F%22%2C%22ROOT_URL_PATH_PREFIX%22%3A%22%22%2C%22autoupdateVersion%22%3A%228%22%2C%22autoupdateVersionRefreshable%22%3A%228%22%2C%22autoupdateVersionCordova%22%3A%228%22%7D"));</script> 

    <script type="text/javascript" src="/c9516dba541a4ba6acac011b9fee2e628f5603f6.js"></script> 



<meta charset="UTF-8"/> 
    <meta name="viewport" content="initial-scale=1, maximum-scale=1"> 

    <meta name="apple-mobile-web-app-capable" content="yes"> 
    <meta name="apple-mobile-web-app-status-bar-style" content="black"> 

    <link rel="stylesheet" href="/css/ratchet.css"/> 
    <link rel="stylesheet" href="/css/ratchet-theme-ios.css" /> 

    <title>Feminology</title> 
</head> 
<body> 

</body> 
</html> 

在我看來像流星服務器響應/__cordova/manifest.json與空的應用程序模板。我正在使用iron:路由器,因此請求可能沒有正確定向?

我應該在哪裏調試這個問題?或者更好的是,它如何被修復?

謝謝。

回答

4

我有完全相同的問題。 看來,我正在部署應用程序(與Mup),而沒有針對android/ios平臺,我在另一臺機器上構建移動應用程序,我添加了兩個平臺。結果是服務器沒有創建像__cordova/manifest.json這樣的移動應用程序所需的文件。

所以,你可能需要部署服務器上運行以下命令,然後重新部署(重辦mup deploy如果你正在使用它):

meteor add-platform android 
meteor add-platform ios 

它不需要實際安裝SDK,只是針對平臺。您會看到Mup會嘗試構建移動應用程序,但由於未安裝SDK,因此將跳過此步驟。

+0

嘿感謝您的反饋。我將不得不找出一種方法來使其與當前的部署平臺Heroku協同工作。 – 0xDE1337

+0

嗨@ 0xDE1337,我有同樣的問題,我也在Heroku上。你有沒有想出一個解決方案? – Alveoli

+0

我不確定它是依賴於部署平臺的。在部署之前,您可以使用meteor命令行工具添加目標平臺。部署時,流星將根據目標平臺運行所需的配置。 – Guillaume

1

快樂的日子。我解決了Heroku平臺的問題。

問題出在我的buildpack中。流行的版本(jordansissel/heroku-buildpack-meteor,AdmitHub/meteor-buildpack-horse)在構建之前刪除android和ios平臺,以避免在服務器上自行編譯移動應用程序。你可以看到這發生在Heroku Dashboard > Activity > View build log

避開這個用我buildpack(從分叉),它不會刪除平臺上,通過發出以下命令:

heroku buildpacks:set https://github.com/Alveoli/meteor-buildpack-horse.git 

感謝@Guillaume的指針。

相關問題