Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
dwayne
0 / 0 / 0
Регистрация: 01.11.2013
Сообщений: 27
#1

Parcel Unmarshalling unknown type code 7667826 at offset 248 - Программирование Android

08.06.2016, 11:40. Просмотров 318. Ответов 2
Метки нет (Все метки)

При передаче одного значения ArrayList из Activity в Activity все проходит хорошо, но при <2 выскакивает ошибка
Java
1
Caused by: java.lang.RuntimeException: Parcel android.os.Parcel@52800e38: Unmarshalling unknown type code 7667826 at offset 244
и указывает на строчку в FirstActivity:
Java
1
ArrayList<Model> list = extraList.getParcelableArrayList("arrayList");
Нашел в Сети такое решение:
Java
1
2
3
-keepclassmembers class * implements android.os.Parcelable {
    static ** CREATOR;
}
нужно прописать в proguard-rules.pro. Прописал, но ничего не изменилось. Ошибка продолжает появляться при передаче больше 2 значений в ArrayList.

FirstActivity:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
...
startActivityForResult(new Intent(FirstActivity.this, SecondActivity.class), SELECT_EMPLOYEE);
...
    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == SELECT_DATA) {
            if (resultCode == Activity.RESULT_OK) {
                Bundle extraList = data.getExtras();
                ArrayList<Model> list = extraList.getParcelableArrayList("arrayList");
            }
        }
    }
SecondActivity:
Java
1
2
3
4
        Intent intent = new Intent();
        intent.putParcelableArrayListExtra("arrayList", data);
        setResult(RESULT_OK, intent);
        finish();
Model:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
...
    @Override
    public int describeContents() {
        return 0;
    }
 
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeValue(mPhoto);
        dest.writeString(mName);
        dest.writeByte((byte) (mSelected ? 1 : 0));
    }
 
    private EmployeeModel(Parcel in) {
        mPhoto = (Bitmap) in.readValue(Bitmap.class.getClassLoader());
        mName = in.readString();
        mSelected = in.readByte() != 0;
    }
 
    public static final Parcelable.Creator<Model> CREATOR = new Parcelable.Creator<Model>() {
        public Model createFromParcel(Parcel in) {
            return new Model(in);
        }
 
        public Model[] newArray(int size) {
            return new Model[size];
        }
    };
...
Также пробовал менять версию api appcompat-v7, но безрезультатно.
Кто знает как поправить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2016, 11:40
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Parcel Unmarshalling unknown type code 7667826 at offset 248 (Программирование Android):

Unknown error (code 14): Could not open database - Программирование Android
Подскажите пожалуйста. в чем ошибка, видно что не открывается БД, но из-за чего это, и правильно ли прочитал лог? :...

SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database - Программирование Android
Переношу БД из assets. При первом запуске ловлю это: SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open database ...

Ошибка при передаче Parcel - Программирование Android
Здраствуйте, пытаюсь через Parcel передать в другую активити обект и получаю ошибку 15:50:46.176 2349 currency.online ERROR...

unknown type name: bool - C++
Здравствуйте. Скачал я Code Blocks с sourceforge. Компилирую программу с 1 булевой переменной, а оно мне ругается, мол нету типа bool и на...

Data type unknown - Delphi БД
Доброго времени суток, возникла проблема: при переводе свойства active в true в одной из таблиц, появляется ошибка Data type unknown,...

Error: unknown type name ‘bool’ - C (СИ)
Всем здравствуйте, доброго времени суток. Помогите разобраться новичку. Только начал изучать Си, ну и понятное дело, столкнулся с...

2
Pablito
2631 / 2113 / 656
Регистрация: 12.05.2014
Сообщений: 7,398
Завершенные тесты: 1
08.06.2016, 13:01 #2
передавай лист моделек как json, не мучайся
тут есть пример что подключить и как завернуть-завернуть практически любой объект в строку-json (сообщения 4 и 8)
Парсинг JSON-строки и вывод данных из строки
0
SeregaJ
9 / 9 / 0
Регистрация: 20.05.2016
Сообщений: 153
10.06.2016, 11:18 #3
[QUOTE=dwayne;9247974]
...
private EmployeeModel(Parcel in) {
mPhoto = (Bitmap) in.readValue(Bitmap.class.getClassLoader());
mName = in.readString();
mSelected = in.readByte() != 0;
}

public static final Parcelable.Creator<Model> CREATOR = new Parcelable.Creator<Model>() {
public Model createFromParcel(Parcel in) {
return new Model(in);
}

public Model[] newArray(int size) {
return new Model[size];
}
};
...

Жирное разве не "кривое"? ) Если не ошибаюсь, вы Parcelable реализовали с ошибками.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2016, 11:18
Привет! Вот еще темы с ответами:

Field <имя_поля> is of an unknown type - Delphi БД
Доброго дня всем :). У меня есть три Query, в двух из которых запросы изменяются в зависимости от того, какая запись является текущей...

Gcc Error: unknown type name ‘swf_t’ - C (Си)
Всем привет нашел в интернете исходники одной программы вот они https://github.com/carthageLover/sob Пытаюсь скомпилировать по этой...

Error unknown type name для объединия - C (СИ)
Здравствуйте! Подскажите, пожалуйста, как исправить код. Компилятор выдает ошибку: error: unknown type name 'u', в строке &quot;u ldc&quot;; ...

при установке gta 4 пишется ошибка unknown code 2 - Windows 7
что делать если при установке gta 4 пишется ошибка unknown code 2:boredom:


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru