Android-Rich-text-Editor icon indicating copy to clipboard operation
Android-Rich-text-Editor copied to clipboard

如何将图片在加载之前上传至服务器?

Open weishubaoforwork opened this issue 6 years ago • 10 comments

我看到ARE_Toolbar.class中的OnActivityResult中存在: if (REQ_IMAGE == requestCode) { Uri uri = data.getData(); this.mImageStyle.insertImage(uri, AreImageSpan.ImageType.URI); } 此时在调用了AREditer的Actvity中的OnActivityResult仅仅是实现了 this.arEditor.onActivityResult(requestCode, resultCode, data);

我希望在图片加载AREditer之前,将图片的uri在调用了AREditer的Activity中得到,并且完成上传后,再加载图片进入AREditer。

weishubaoforwork avatar May 29 '19 03:05 weishubaoforwork

在主Activity中的result写成如此,不知道能否有效? if (requestCode==1){ Uri uri=data.getData(); File file=uriToFile(uri,AcDetailEditActivity.this); GreenDaoManager greenDaoManager=GreenDaoManager.getInstance(AcDetailEditActivity.this); Map<String ,String> datas=new HashMap<>(); datas.put("token",greenDaoManager.getUser().getSignature()); datas.put("activityId",uuidString); datas.put("filePath",uri.toString()); HttpUtil.getInstance().httpUpLoadImage(INTERAPI + "/activityImgUpload", file, datas, new HttpUtil.ResultCallback() { @Override public void onError(String msg) {

            }

          @Override
            public void onSuccess(String result) {
                arEditor.onActivityResult(requestCode, resultCode, data);
            }
        });

weishubaoforwork avatar May 29 '19 03:05 weishubaoforwork

ImageStrategy -- https://github.com/chinalwb/Android-Rich-text-Editor/blob/63ca81e04188f175a0f6d9d4b004dcc9c0b8612b/docs/image_upload_insert.md

看下这个 是否能懂.

chinalwb avatar May 29 '19 05:05 chinalwb

https://github.com/chinalwb/Android-Rich-text-Editor/issues/56 这个是同样的问题.

chinalwb avatar May 29 '19 05:05 chinalwb

你好,集成了这个,但是我没有在doInBackgourd中无法得到Context,没有办法做上传,这个该怎么解决呢?

weishubaoforwork avatar May 30 '19 03:05 weishubaoforwork

你好. 但是我没有在doInBackgourd中, 没在doInBackground做上传吗? 是不是没有用 AsyncTask?

void uploadAndInsertImage(Uri uri, ARE_Style_Image areStyleImage);

这个回调方法当中有一个 ARE_Style_Image. 你可以通过这个的 getEditText 方法得到 EditText 然后就可以得到 context 了.

chinalwb avatar May 30 '19 04:05 chinalwb

对的。我现在使用了你推荐的方法,因为有doInBackGround,参数中的uris我不能理解 File file = new File(new URI(uris[0].toString()));无法得到File,

我现在是使用文件上传的,还希望能给个帮助。

我现在的参数是File,user的某个值,但是我却不知道怎么得到File

weishubaoforwork avatar May 30 '19 05:05 weishubaoforwork

Here you go:

Convert file: Uri to File in Android https://stackoverflow.com/a/8370299/853191

chinalwb avatar May 30 '19 06:05 chinalwb

我尝试了很多次,发现AREditor没有走ImageStrategy,使用AREditext并重写了Selecttor后得以解决。辛苦大神

weishubaoforwork avatar May 30 '19 07:05 weishubaoforwork

厉害!

chinalwb avatar May 30 '19 07:05 chinalwb

通过网络加载,这似乎也解决了之前加载图片时android8的bug,大神你有空可以看看这个问题。貌似网络加载没有android8的那个闪退bug

weishubaoforwork avatar May 30 '19 08:05 weishubaoforwork