【问题标题】:Bitmap crash activity [duplicate]位图崩溃活动 [重复]
【发布时间】:2021-08-02 06:43:28
【问题描述】:

我正在尝试将 byte[] 转移到另一个意图并将其转换为位图,但是它使我的应用程序崩溃而 logcat 中没有错误,logcat 只是重新启动。 有些照片工作正常,有些照片只是让活动崩溃。

如果我没有得到图像值,只有其他数据,它工作得很好,但是当我也尝试获取图像时,它会重新启动。

首先我从解析中获取图像字节[],然后通过意图将其传输到另一个活动并将其转换为位图。

从解析中获取数据:

ParseQuery<ParseObject> query = ParseQuery.getQuery("Feed");
query.orderByDescending("createdAt");

query.findInBackground(new FindCallback<ParseObject>() {
    @Override
    public void done(List<ParseObject> objects, ParseException e) {

        if (e == null){

                for (ParseObject allData : objects) {


                image = (ParseFile) allData.get("Pictures");


                if (image == null){
                    Log.e("Image", "NULL");
                }else{
                    image.getDataInBackground(new GetDataCallback() {
                        @Override
                        public void done(byte[] data, ParseException e) {

                            if (e == null){


                                date = allData.getCreatedAt();
                                DateFormat df = new SimpleDateFormat("HH:mm:ss\nyyyy-MM-dd");
                                reportDate = df.format(date);

                                arrayList.add(new MyData(reportDate,allData.getString("UserName"),allData.getString("BussinessName"),data));

                            }


                            adapter = new MyAdapter(FeedActivity.this, arrayList);
                            feedListView.setAdapter(adapter);
                            adapter.notifyDataSetChanged();
                   
                        }
                    });
                }

            }


            }

        }

});

将 byte[] 发送到另一个活动:

feedListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

    @Override
    public void onItemClick(AdapterView<?> parent, View view,int position, long id) {
        // TODO Auto-generated method stub


        Intent intent = new Intent(FeedActivity.this, BusinessDetails.class);

            MyData data = (MyData) adapter.getItem(position);

            String BusinessNamePage = data.getBusinessName();
            String DatePage = data.getDate();
            String UserNamePage = data.getUserName();
            byte[] PicturePage = data.getPicture();

            intent.putExtra("image",PicturePage);
            intent.putExtra("BussinessName", BusinessNamePage);
            intent.putExtra("Date", DatePage);
            intent.putExtra("username", UserNamePage);

            startActivity(intent);



    }
});

在另一个活动中获取字节[]并将其转换为位图:

public class BusinessDetails extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_business_details);

        ImageView imageView = findViewById(R.id.imageViewTitle);
        TextView businessName = findViewById(R.id.businessNameDetailTitle);
        TextView userName = findViewById(R.id.userNameValue);
        TextView date = findViewById(R.id.dateValue);

        Intent intent = getIntent();

        byte[] image = intent.getByteArrayExtra("image");
        Bitmap bmp = BitmapFactory.decodeByteArray(image, 0, image.length);
        imageView.setImageBitmap(bmp));

        businessName.setText(intent.getStringExtra("BussinessName"));
        date.setText(intent.getStringExtra("Date"));
        userName.setText(intent.getStringExtra("username"));

    }


}

谢谢!

编辑:错误 - https://ibb.co/ngJGWBJ

【问题讨论】:

  • 你知道哪一行导致你的应用崩溃吗?
  • 不幸的是我没有,但我认为它的 byte[] 到 Bitmap 导致了这个..
  • 好吧,你可以设置很多“Log.d(...);”在每一行并跟踪它们,以确保
  • 好的,我更改了 logcat 上的过滤器,所以我现在可以看到错误:ibb.co/ngJGWBJ

标签: java android arrays parse-platform android-bitmap


【解决方案1】:

好吧,我终于搞定了。

我试图通过 Intent 传输的图片太大,这就是一些照片很好,而其中一些让我的应用程序崩溃的原因。

为了解决这个问题,我使用了这个解决方案: https://stackoverflow.com/a/45149923/14446860

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-06
    • 2016-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多