为了账号安全,请及时绑定邮箱和手机立即绑定

无法将 parcelable arraylist 发送到服务类

无法将 parcelable arraylist 发送到服务类

慕标琳琳 2022-12-15 11:11:20
我正在尝试将可打包的数组列表传递给包含图像 url 的服务。出于某种原因,所有数据类型都传递给服务,但不是 parcelable arraylist。一个错误logcat来了E/JavaBinder:!!!失败的 BINDER 交易 !!! .以下是我的 imageurl Arraylist 模型代码。public class ImagesUrl implements Parcelable {    private int id;    private String filename;    private String imageurl ;    public ImagesUrl(Integer id , String imageurl , String filename) {        this.id = id;        this.filename = filename;        this.imageurl = imageurl ;    }    public static final Parcelable.Creator<ImagesUrl> CREATOR = new Parcelable.Creator<ImagesUrl>() {        public ImagesUrl createFromParcel(Parcel in) {            return new ImagesUrl(in.readInt(),in.readString(), in.readString());        }        public ImagesUrl[] newArray(int size) {            return new ImagesUrl[size];        }    };    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getFilename() {        return filename;    }    public void setFilename(String filename) {        this.filename = filename;    }    public String getImageurl() {        return imageurl;    }    public void setImageurl(String imageurl) {        this.imageurl = imageurl;    }    public static Creator<ImagesUrl> getCREATOR() {        return CREATOR;    }    @Override    public int describeContents() {        return 0;    }    @Override    public void writeToParcel(Parcel dest, int flags) {        dest.writeInt(id);        dest.writeString(filename);        dest.writeString(imageurl);    }    private void readFromParcel(Parcel in) {        id = in.readInt();        filename = in.readString();        imageurl = in.readString();    }}这是启动服务的代码: Intent i= new Intent(SyncActivity.this,ImageDownloadService.class);    Bundle b=new Bundle();    b.putParcelableArrayList("imageurls", imagesUrlArrayList);    b.putInt("int",12);    i.putExtras(b);    startService(i);如果我在服务类中获得 pacelable arraylist,我将调用 GetImages asyntask。
查看完整描述

1 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

我的 arraylist 有 5000 个 url,无法通过 intent 发送。我制作了一个实用程序类来在活动之间传递和接收数组。



查看完整回答
反对 回复 2022-12-15
  • 1 回答
  • 0 关注
  • 55 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信