从解码的base64设置图像崩溃我的应用程序

时间:2017-03-09 04:29:19

标签: android

我不知道怎么看logcat,我是新的。下面是我从mysqldatabase显示记录的代码。我可以从数据库中获取blob文件,并将其作为文本显示在textview上,确定从数据库获取数据没有任何问题,问题是我解码后显示在imageview上,我的应用程序崩溃

private void showUsers(String json){
    try {
        JSONObject jsonObject = new JSONObject(json);
        JSONArray result =  jsonObject.getJSONArray(Config.TAG_JSON_ARRAY);
        JSONObject c = result.getJSONObject(0);
        String username = c.getString(Config.TAG_UNAME);
        String password = c.getString(Config.TAG_PWORD);
        String firstname = c.getString(Config.TAG_FNAME);
        String lastname = c.getString(Config.TAG_LNAME);
        String birthday = c.getString(Config.TAG_BDAY);
        String gender = c.getString(Config.TAG_GENDER);
        String image = c.getString(Config.TAG_IMAGE);


        editTextUName.setText(username);
        editTextPWord.setText(password);
        editTextFName.setText(firstname);
        editTextLName.setText(lastname);
        tvbirthday.setText(birthday);

        if (gender.equals("Male")){
            radiomale.setChecked(true);
        }
        if (gender.equals("Female")){
            radiofemale.setChecked(true);
        }
        // i can set the base64 to text
        //    tvblob.setText(image);

        byte[] kahitano = Base64.decode(image,Base64.DEFAULT);
        Bitmap decodeimage = BitmapFactory.decodeByteArray(kahitano,0,kahitano.length);
        imageblob.setImageBitmap(decodeimage);



    } catch (JSONException e) {
        e.printStackTrace();
    }
} 

1 个答案:

答案 0 :(得分:0)

您使用我在我的应用程序中使用的方法解码Base64 String Bitmap

public static Bitmap decodeBase64ToBitmap(String input) {
    byte[] decodedByte = Base64.decode(input, 0);
    return BitmapFactory.decodeByteArray(decodedByte, 0, decodedByte.length);
}