Android компилятор жалуется, что Google гуавы v12 ImmutableSortedSet
не имеет методов, first()
, last()
и т.д., и что ImmutableSortedSet
не реализует SortedSet
. В настоящее время я использую Android API 8. Вот пример кода:
/*
* I only have one set, 'mSet', but for the sake of this example
* I added an ImmutableSortedSet instance.
*/
private final SortedSet<Item> mSet;
private final ImmutableSortedSet<Item> mImmutableSet;
private MyObject(Collection <? extends Item> items) {
// Fails -- cannot convert from ImmutableSortedSet<Item> to SortedSet<Item>
mSet = ImmutableSortedSet.copyOf(items);
mImmutableSet = ImmutableSortedSet.copyOf(items);
}
private Item getFirstItem() {
// Fails -- no such method 'first()' in ImmutableSortedSet
return mImmutableSet.first();
}
ОБНОВИТЬ
Я немного поработал, и оказалось, что NavigableSet
, интерфейс, который реализует ImmutableSortedSet
, стал доступен только в уровне API 9 и выше. К сожалению, мне сложно использовать API уровня 8. Мой вопрос все еще стоит. Есть ли способ исправить это без необходимости играть с кодом Google?
Guava 12.0 не поддерживает вашу версию Android, поэтому, пожалуйста, придерживайтесь версии 11.0.2 до тех пор, пока у нас не будет backport.