第一個問題:
問題描述:
PhoneGap+Sencha Touch開發(fā)的應(yīng)用,打包后的APP或者調(diào)試期間,在啟動的時候提示如下信息:
Application Error - The connection to the server was unsuccessful.
(file:///android_asset/www/index.html)
問題分析:
1,這個應(yīng)該是PhoneGap某些版本的BUG,尤其在index.html加載的內(nèi)容較多時容易出現(xiàn)。
2,采用了alert()進行調(diào)試,中斷了后續(xù)代碼的運行。
解決方法:
方法1:更新到PhoneGap的最新版本;不要使用alert()調(diào)試;
方法2:設(shè)置加載超時屬性
super.setIntegerProperty("loadUrlTimeoutValue",10000);?
完整代碼如下(設(shè)置超時為 10 秒)
@Override
publicvoid onCreate(Bundle savedInstanceState){
??? super.onCreate(savedInstanceState);
??? super.loadUrl("file:///android_asset/www/home/index.html");
??? super.setIntegerProperty("loadUrlTimeoutValue",10000);
方法3:改名法
把index.html更名為main.html,然后新建一個index.html頁面,內(nèi)容如下:
<!doctype html> <html> <head> <title>tittle</title> <script> window.location='./main.html'; </script> <body> </body> </html>
主要原理就是通過一個過渡頁面,把加載首頁的內(nèi)容最小化。
找到項目中res/xml目錄下的config.xml,把你的外網(wǎng)的域名地址添加到配置中
<access origin="http://example.com" /> <!--allow any secure requests to example.com -->
第二個問題:
問題描述:
使用chrome調(diào)試時出現(xiàn)XMLHttpRequest cannot load http://54.214.8.118:8080/common/sendSidAction.action. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
這是因為Chrome默認(rèn)不允許本地調(diào)用ajax請求,但手機上運行卻沒問題。
解決方案:
在Chrome的啟動參數(shù)中添加如下
--allow-file-access-from-files
也就是在Chrome 的快捷方式->右鍵屬性->目標(biāo)框
里面,前邊是Chrome運行程序的路徑,后面 空格 --allow-file-access-from-files
即可
第三個問題:
關(guān)于Google地圖API密匙的問題,進入地圖的時候提示我“google已禁止對此應(yīng)用使用地圖API。.....”
google 網(wǎng)在中國內(nèi)是禁用的。用電腦上google還是個問題啊 親 ,手機不用說啦。
其他問題補充中...
問題描述:
PhoneGap+Sencha Touch開發(fā)的應(yīng)用,打包后的APP或者調(diào)試期間,在啟動的時候提示如下信息:
Application Error - The connection to the server was unsuccessful.
(file:///android_asset/www/index.html)
問題分析:
1,這個應(yīng)該是PhoneGap某些版本的BUG,尤其在index.html加載的內(nèi)容較多時容易出現(xiàn)。
2,采用了alert()進行調(diào)試,中斷了后續(xù)代碼的運行。
解決方法:
方法1:更新到PhoneGap的最新版本;不要使用alert()調(diào)試;
方法2:設(shè)置加載超時屬性
super.setIntegerProperty("loadUrlTimeoutValue",10000);?
完整代碼如下(設(shè)置超時為 10 秒)
@Override
publicvoid onCreate(Bundle savedInstanceState){
??? super.onCreate(savedInstanceState);
??? super.loadUrl("file:///android_asset/www/home/index.html");
??? super.setIntegerProperty("loadUrlTimeoutValue",10000);
方法3:改名法
把index.html更名為main.html,然后新建一個index.html頁面,內(nèi)容如下:
<!doctype html> <html> <head> <title>tittle</title> <script> window.location='./main.html'; </script> <body> </body> </html>
主要原理就是通過一個過渡頁面,把加載首頁的內(nèi)容最小化。
找到項目中res/xml目錄下的config.xml,把你的外網(wǎng)的域名地址添加到配置中
<access origin="http://example.com" /> <!--allow any secure requests to example.com -->
第二個問題:
問題描述:
使用chrome調(diào)試時出現(xiàn)XMLHttpRequest cannot load http://54.214.8.118:8080/common/sendSidAction.action. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.
這是因為Chrome默認(rèn)不允許本地調(diào)用ajax請求,但手機上運行卻沒問題。
解決方案:
在Chrome的啟動參數(shù)中添加如下
--allow-file-access-from-files
也就是在Chrome 的快捷方式->右鍵屬性->目標(biāo)框
里面,前邊是Chrome運行程序的路徑,后面 空格 --allow-file-access-from-files
即可
第三個問題:
關(guān)于Google地圖API密匙的問題,進入地圖的時候提示我“google已禁止對此應(yīng)用使用地圖API。.....”

google 網(wǎng)在中國內(nèi)是禁用的。用電腦上google還是個問題啊 親 ,手機不用說啦。
其他問題補充中...
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
