Im, делающий приложение для телефонного разговора (телефонная книга 2.9 + jquery 1.8.3 + jquery mobile 1.3.1) Он отлично работает в: -4.3 android устройство. -4.0 Android-устройство. -2.2 android виртуальный устройство.Проект Android для мобильного телефона работает на эмуляторе и в некоторых устройствах, но не в устройстве Android 2.2.
Проблема в том, что у меня возникли проблемы при установке на устройстве Android 2.2.2. Некоторые из вызовов api работают, а другие - нет.
Например, этот вызов работает:
$.ajax({
data: {museum_id:'1'},
url: url+'index.php?r=api/ListAllCuriosities',
type: 'get',
success: function (response) {
var resultado = response['data'];
var listadohtml = '';
for (var i=0;i<resultado.length;i++){
listadohtml += '<ul data-role="listview" data-theme="b" class="titulos"><li>'+resultado[i]['title']+'</li></ul>'
+' <p>'+ resultado[i]['description']+'</p>';
}
$('#listCuriosities').html(listadohtml);
$('#listCuriosities').trigger('create');
},
error: function() {
//something went wrong, handle the error and display a message
alert('Se ha producido un error en la llamada al servidor');
}
});
Но эти другие не
$.ajax({
data: {museum_id:'1'},
url: url+'index.php?r=api/ListMasterpieces',
type: 'get',
success: function (response) {
var visitedList = JSON.parse(window.localStorage.getItem("visited"));
var resultado = response['data'];
var listadohtml = '<div>';
var author = '';
for (var i=0;i<resultado.length;i++){
var item = '';
var isVisited = 'data-theme="a"';
if(visitedList!=null && resultado[i]['id'] in visitedList && visitedList[resultado[i]['id']]==1){
isVisited = 'data-theme="b" data-icon="check"';
}
if(resultado[i]['authorname']!=author){ // en caso de que el autor haya cambiado se insertará una nueva línea
item += '<ul data-role="listview" data-theme="b"><li>'+resultado[i]['authorname']+'</li></ul>';
author = resultado[i]['authorname'];
}
var id = resultado[i]['id'];
item += '<p><a href="detalle.html?id='+id+'" id="enlace-'+id+'" data-role="button" data-ajax="false" data-prefetch="false" '+isVisited+'>'+resultado[i]["name"] + '</a></p>';
listadohtml += item;
}
listadohtml += '</div>';
$('#listaMasterpieces').html(listadohtml);
$('#listaMasterpieces').trigger('create');
},
error: function() {
//something went wrong, handle the error and display a message
alert('Se ha producido un error en la llamada al servidor');
}
});
Я думаю, что это может быть: -Потыми проблемы разрешений аа (Как вы можете видеть, я хранить некоторую информацию в устройстве) -Потому что jquery не работает должным образом (я не вижу предупреждения об ошибке ajax-метода)
Я прикрепляю свой м anifest:
<supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizeable="true" android:anyDensity="true" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.museum.prado.MainActivity"
android:label="@string/app_name"
android:configChanges="orientation|screenSize" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Заранее спасибо
Выглядит как проблема localStorage. Можете ли вы проверить, можете ли вы получить доступ к своему локальному хранилищу на устройстве с 2.2? –
Спасибо большое! Вы показали мне, в чем проблема. Я мог получить доступ к контенту, но если у меня нет контента, это дает мне ошибку (но не с устройствами Android 4) – Yises