Android Parcel.obtain () возвращает null?

Я просто разрабатываю приложение для Android (API 15) и при попытке написать модульный тест получил следующую проблему:

Я использую android.os.Parcel для сохранения класса (например, если экран повернут) и отправить его в другое действие. Если я пытаюсь выполнить тестирование метода Parcel, как это (я получил это из Интернета):

@Test public void testParcel() { Comment test = new Comment(); test.setId(testNr0Id); test.setComment(testNr0String); // Obtain a Parcel object and write the parcelable object to it: Parcel parcel = Parcel.obtain(); test.writeToParcel(parcel, 0); // After you're done with writing, you need to reset the parcel for reading: parcel.setDataPosition(0); // Reconstruct object from parcel and asserts: Comment createdFromParcel = Comment.CREATOR.createFromParcel(parcel); assertEquals(test, createdFromParcel); } 

То я получаю исключение NullPointerException, потому что посылка возвращается из Parcel.obtain () null. JavaDoc просто говорит, что этот метод «возвращает объект объекта из пула». Теперь мой вопрос: какой пул? И почему этот объект Parcel-Object null? Любые предложения, как сделать этот тест?

Спасибо за вашу помощь

Майкл

У меня была такая же проблема. Однако после того, как я переместил тест из test каталога в каталог androidTest все стало нормально работать. Я думаю, это связано с тем, что класс Parcel является системным, поэтому его нужно также измерить.

Intereting Posts