[後の編集: 私が見つけたように、問題はデバイスの種類ではなく、Android のバージョンに関連しています。したがって、私のコードは Android 4.0 までは完璧でした。修正は答えにあります。]
この問題で少なくとも 2 日を無駄にしました。Android アプリケーションとしてパックされた Web ページはほとんどありません。ブラウザと、Galaxy Tab 2 を含む私の Android デバイスでは完全に動作しますが、Nexus では動作しません。私はそれを持っていないので、APK を作成し続け、友人がテストしました。エラーは AJAX にありました。同じコードが私には機能しますが、彼には機能しません (他の人はほとんどいません。デバイスはわかりません)。
以下は、私が使用する小さなテストです。ご覧のとおり、エラーはありません (これは私の推測です)。がすべての Android デバイスで動作しないのはなぜですか? 私はこのコードをEclipseとBuild.PhoneGap.comでコンパイルしたことに言及します(他の参照ファイルはここにありますhttp://jumpshare.com/b/57O6tH )。しかし、結果は同じです。取得した APK は、一部のデバイスでは機能しますが、他のデバイスでは機能しません。*file:///android_asset/www/import.html* を使用しても役に立ちませんでした。ファイルが存在しないため、エラーは 404 です。しかし、そうです!
間違いはどこですか?それは私を夢中にさせます:)。このコードがブラウザでは正常に動作し、Galaxy Tab 2 (および Samsung Gio) では APK として正常に動作するのに、Nexus (およびその他のデバイス) では動作しないのはなぜですか?
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="jquery.mobile-1.2.0.min.css" rel="stylesheet"/>
<script src="jquery-1.8.3.min.js" type='text/javascript'></script>
<script src="jquery.mobile-1.2.0.min.js" type='text/javascript'></script>
<script type='text/javascript'>
//$(document).ready(function() {
$(document).bind("pageinit", function(){
$("#buton").bind('click',function(){
$.mobile.showPageLoadingMsg();
$.ajax({
url:'import.html',
datatype:'html',
type: 'GET',
success:function(html){
$.mobile.hidePageLoadingMsg();
$("#result").html(html);
},
error: function(jqXHR, textStatus, errorThrown) {
$("#result").html("ERRORS:"+errorThrown+"<hr>"+textStatus+"<hr>"+JSON.stringify(jqXHR))
$.mobile.hidePageLoadingMsg();
alert('Not working!!!');
}
})
});
});
</script>
</head>
<body>
<!-- Pagina de start -->
<div data-role="page" id="start">
<div data-role="header" data-theme="b">
<h1>Test</h1>
</div>
<div data-role="content">
<button id="buton">AJAX!</button>
<div id="result"></div>
</div>
</div>
</body>
</html>