При запуске Activity вылетает ошибка и приложение закрывается. Раньше она запускалась, но перестала после того как в классе (который я передаю через putExtra) появилось новое поле (SerialBitmap). В чем проблема или как можно это решить?
Класс который передается:
public class Item implements Serializable {
private int ID;
private String name;
private String smallDescr;
private String bigDescr;
private String ingridients;
private double price;
private int image;
private int rating;
private SerialBitmap img;
public Item(String name, String smallDescr, String bigDescr, int image) {
this(name,smallDescr,bigDescr,image,1," ",0f,1);
}
public Item(String name, String smallDescr, String bigDescr, int image, int id, String ingridients, double price, int rating){
this.name = name;
this.smallDescr = smallDescr;
this.bigDescr = bigDescr;
this.image = image;
this.ID = id;
this.ingridients = ingridients;
this.price = price;
this.rating = rating;
}
public String GetName() {
return name;
}
public void SetName(String name) {
this.name = name;
}
public String GetSmallDescr() {
return smallDescr;
}
public void SetSmallDescr(String smallDescr) {
this.smallDescr = smallDescr;
}
public String GetBigDescr() {
return bigDescr;
}
public void SetBigDescr(String bigDescr) {
this.bigDescr = bigDescr;
}
public int GetImage() {
return image;
}
public void SetImage(int image) {
this.image = image;
}
public double GetPrice() {
return this.price;
}
public void SetPrice(double price) {
this.price = price;
}
public int GetID() {
return this.ID;
}
public void SetID(int id) {
this.ID = id;
}
public String GetIngridients() {
return this.ingridients;
}
public void SetIngridients(String ingridients) {
this.ingridients = ingridients;
}
public int GetRating() {
return rating;
}
public void SetRating(int rating) {
this.rating = rating;
}
public Bitmap GetImg(){
return img.getBitmap();
}
public SerialBitmap GetSBitmap(){
return img;
}
public void SetImg(Bitmap img){
this.img = new SerialBitmap(img);
}
Класс SerialBitmap
public class SerialBitmap implements Serializable {
private Bitmap bitmap;
private transient Bitmap.CompressFormat compressFormat = Bitmap.CompressFormat.PNG;
private transient int compressQuality = 100;
public SerialBitmap(Bitmap bitmap)
{
this.bitmap = bitmap;
}
public Bitmap getBitmap() {
return bitmap;
}
public void recycle() {
if (bitmap!=null && !bitmap.isRecycled()) bitmap.recycle();
}
private void writeObject(java.io.ObjectOutputStream out) throws IOException {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(compressFormat, compressQuality, stream);
byte[] byteArray = stream.toByteArray();
out.writeInt(byteArray.length);
out.write(byteArray);
}
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException {
int bufferLength = in.readInt();
byte[] byteArray = new byte[bufferLength];
int pos = 0;
do {
int read = in.read(byteArray, pos, bufferLength - pos);
if (read != -1) {
pos += read;
} else {
break;
}
} while (pos < bufferLength);
bitmap = BitmapFactory.decodeByteArray(byteArray, 0, bufferLength);
}
public Bitmap.CompressFormat getCompressFormat() {
return compressFormat;
}
public void setCompressFormat(Bitmap.CompressFormat compressFormat) {
this.compressFormat = compressFormat;
}
public int getCompressQuality() {
return compressQuality;
}
public void setCompressQuality(int compressQuality) {
this.compressQuality = compressQuality;
}
}
Фрагмент где запускается Activity
int number = Integer.parseInt(link.getSchemeSpecificPart());
Intent product_info = new Intent(this, InformationActivity.class);
product_info.putExtra(Item.class.getSimpleName(), listOfItems.get(number));
startActivity(product_info);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
этот метод-логика фигуры ладья из шахмат,метод возвращает все возможные ходы для фигуры по текущему ее местоположениюЯ вижу что код по сути...
@Configuration позволяет внутренние зависимостиОзначает ли это, что вызвав метод создания одного бина из другого, можно сымитировать поведение...
Подскажите, а то уже всю голову сломал! Задача: У меня есть три таблицы, с помощью "поля со списком" я должен выбрать одну из них и в цикле вывести: