Ссылка на Q & A в Appcelerator:
Ошибка синтаксического анализа XML на Android, но работает на iPhone
Я готовлю общее приложение, которое работает как для телефонов iPhone, так и для Android с тем же кодом, для которого в основном используется Titanium. С одним и тем же кодом я нашел разные результаты для разбора XML-документа, и мое приложение для Android не загружает его должным образом. Это вызывает исключение NULLPointer. Но тот же код отлично работает на iPhone.
Вы можете это проверить?
xyz(languageCode, currentVersion, xmldoc) {
try {
Ti.API.info('Start parsing the library');
var archiveData = xmldoc.getElementsByTagName('archive');
Ti.API.info('Archive: ' + archiveData);
Ti.API.info('Item: ' + archiveData.item);
Ti.API.info('Lendth: ' + archiveData.length);
var newVersion = archiveData.item(0).getAttribute('version');
}catch(e){
Ti.API.info('Library Went In Catch: ' + e);
}
Вызов функции: это из метода onload () Ti.Network.HttpClient
xyz (languageCode, version, this.responseXML.documentElement);
Выход iPhone:
Архив: [объект TiDOMNodeList]
[INFO] Item: [object TiDOMNodeList]
[INFO] Длина: 1
Вывод Android:
[ИНФО] [3,7225] Архив: [Ti.NodeList]
[ИНФО] [1,7226] Item: [KrollMethod item]
[INFO] [2,7228] Длина: 0 [INFO]
[235,7466] Библиотека отправлена в вылов: JavaException: java.lang.NullPointerException: null