Android 从自定义键盘发送图像

Android 从自定义键盘发送图像,android,bitmap,custom-keyboard,android-input-method,Android,Bitmap,Custom Keyboard,Android Input Method,我有一个自定义键盘,它将画布上的图形作为输入,通过编程转换为位图。现在我想将此位图图像发送到应用程序,而不是普通文本。如何提交图像而不是文本 sendImage.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { InputConnection ic = getCurrentInputConnection();

我有一个自定义键盘,它将画布上的图形作为输入,通过编程转换为位图。现在我想将此位图图像发送到应用程序,而不是普通文本。如何提交图像而不是文本

 sendImage.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            InputConnection ic = getCurrentInputConnection();
            if(mView.isCanvasDrawn()){
                Bitmap signature = getSignatureScreenshot(drawingView);
                ByteArrayOutputStream bos = new ByteArrayOutputStream();
                signature.compress(Bitmap.CompressFormat.PNG, 0, bos);
                ic.commitText(text,0); //this is for text but i want to send image
            }
        }
    });

有什么建议吗?

将位图转换为base64,并在单击图像时传递到您的服务器

1您必须提供图像url。 2此权限是必需的。标记\活动\新任务和标记\授予\读取\ URI \权限

3从图像url获取位图的方法

  public Uri getLocalBitmapUri(Bitmap bmp) {
    Uri bmpUri = null;
    try {
        File file =  new File(getExternalFilesDir(Environment.DIRECTORY_PICTURES), "share_image_" + System.currentTimeMillis() + ".png");
        FileOutputStream out = new FileOutputStream(file);
        bmp.compress(Bitmap.CompressFormat.PNG, 90, out);
        out.close();
        bmpUri = Uri.fromFile(file);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return bmpUri;
}

我正在制作输入法键盘。它会将图像发送到任何应用程序,如消息传递等吗?
  public Uri getLocalBitmapUri(Bitmap bmp) {
    Uri bmpUri = null;
    try {
        File file =  new File(getExternalFilesDir(Environment.DIRECTORY_PICTURES), "share_image_" + System.currentTimeMillis() + ".png");
        FileOutputStream out = new FileOutputStream(file);
        bmp.compress(Bitmap.CompressFormat.PNG, 90, out);
        out.close();
        bmpUri = Uri.fromFile(file);
    } catch (IOException e) {
        e.printStackTrace();
    }
    return bmpUri;
}