Неясно, что вы подразумеваете под «идентичными». Например, массивы a
и b
ниже идентичны (обратите внимание на вложенные массивы)?
var a = ["foo", ["bar"]], b = ["foo", ["bar"]];
Вот оптимизированная функция сравнения массива, которая в свою очередь сравнивает соответствующие элементы каждого массива с использованием строгого равенства и не выполняет рекурсивного сравнения элементов массива, которые сами представляют собой массивы, что означает, что в приведенном выше примере arraysIdentical(a, b)
вернет false
. Он работает в общем случае, на котором решения на основе JSON- и join()
не будут:
function arraysIdentical(a, b) {
var i = a.length;
if (i != b.length) return false;
while (i--) {
if (a[i] !== b[i]) return false;
}
return true;
};
Я также посмотрел на проект кода Google и мерзавца repo. Я держался далеко от проекта кода Google из-за очевидного багажа, который пришел в необходимых проектах. Я закончил тем, что создал пользовательские реализации по мере необходимости для адаптации стандартного Java API. Можно найти грубое описание моего решения в эти группа разработчиков андроида. Это - 4 коротких, легко протестированные классы
Пожалуйста, взгляните на Google API Client Library для Java, которая поддерживает Android
Она также поддерживает новые технологии GData, такие как недавно объявленный частичный ответ/обновление и JSON-C, обе из которых могут значительно повысить эффективность работы на Android.
Для начала ознакомьтесь с Руководством разработчика Android. Также посмотрите пример Android для Picasa Web Albums Data API, который демонстрирует возможность создания/обновления/удаления фотоальбома и загрузки фотографии.
Полное раскрытие информации: я являюсь владельцем проекта google-api-java-client.