上传图片 以String 类型

//图片选择器
private void matisse() {

    Matisse.from(BasicDataActivity.this)
            .choose(MimeType.allOf())
            .countable(true)
            .capture(true)
            .captureStrategy(
                    new CaptureStrategy(true, "包名"))
            .maxSelectable(1)
            .addFilter(new GifSizeFilter(320, 320, 5 * Filter.K * Filter.K))
            .gridExpectedSize(
                    getResources().getDimensionPixelSize(R.dimen.grid_expected_size))
            .restrictOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT)
            .theme(R.style.Echarge)
            .thumbnailScale(0.85f)
            .imageEngine(new PicassoEngine())
            .forResult(REQUEST_CODE_CHOOSE);
}


@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == REQUEST_CODE_CHOOSE && resultCode == RESULT_OK) {
        mSelected = Matisse.obtainResult(data);
        Uri uri = mSelected.get(0);
        Bitmap smallBitmap = null;
        try {
            smallBitmap = ImageUtils.getBitmapFromUri(uri, BasicDataActivity.this);
            image2Up(smallBitmap);
        } catch (IOException e) {

        }
    }
}

/**
 * 上传图片
 *
 * @param smallBitmap
 */
private void image2Up(final Bitmap smallBitmap) {

    Retrofit retrofit1 = RetrofitUtils.retrofitutild(BasicDataActivity.this, Interface.BASEURL2, "图片上传中...");

    BaseApi baseApi = retrofit1.create(BaseApi.class);
    String s = ImageUtils.bitmapToString(smallBitmap);

    Call<PublicBean> call = baseApi.getModifyavatar(SharePreferenceUtils.getToken(BasicDataActivity.this), s);

    call.enqueue(new Callback<PublicBean>() {
        @Override
        public void onResponse(Call<PublicBean> call, Response<PublicBean> response) {

            RetrofitUtils.loadingDialog.dismiss();
            PublicBean bean = response.body();
            if (bean == null) return;
            if (bean.getCode() == 0) {

                instance.put("avr", mSelected.get(0).toString());
                Uri uri = mSelected.get(0);
                GlideUtils.loadImageViewSize(BasicDataActivity.this, uri, 180, 180, R.mipmap.ic_default_avatars, mCiAvatar);

            } else if (bean.getCode() == 2) {
                TokenDialogUtils.tokenDialog(BasicDataActivity.this);

            } else {

                //Toast.makeText(BasicDataActivity.this, bean.getError().toString(), Toast.LENGTH_SHORT).show();
                DialogUtils.showAlertDialog(BasicDataActivity.this, bean.getError().toString());
            }
        }

        @Override
        public void onFailure(Call<PublicBean> call, Throwable t) {
            RetrofitUtils.loadingDialog.dismiss();
            t.printStackTrace();

        }
    });

}

@Override
public void onAllGranted(String[] allPermissions) {
    matisse();
}

@Override
public void onDeined(String[] dinedPermissions) {
    //displayFrameworkBugMessageAndExit();
}
//点击启动
new RTPermission.Builder()
        .permissions(
                Manifest.permission.CAMERA
        )
        .start(this, this);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值