标签: android-bitmap

如何在android中获取捕获图像的路径

我正在开发一个Android应用程序.它具有捕获图像应显示在屏幕上的功能,我需要获取该图像路径,以便我可以将该图像发送到服务器.

我能够在屏幕上显示图像,但无法获得绝对图像路径.

我正在走路:

content://media/external/images/media/1220
content://media/external/images/media/1221
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得实际的图像路径?

这是我的代码:

mintent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
mintent.putExtra(MediaStore.EXTRA_OUTPUT,
                 MediaStore.Images.Media.EXTERNAL_CONTENT_URI.toString());
startActivityForResult(mintent, 1);

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  if ((data != null && !data.toString().equalsIgnoreCase("Intent {  }"))
      || requestCode == 1)
    switch (requestCode) {
      case 1:
        try {
          // Uri imageFileUri = data.getData();
          // String path=getRealPathFromURI(this,imageFileUri);
          // Bitmap bitmap = (Bitmap) data.getExtras().get("data");

          String photoPath = null;
          Bitmap bitmap = (Bitmap) data.getExtras().get("data");
          Intent intent = new Intent(this, Media.class);
          intent.putExtra("BitmapImage", bitmap);

          Bundle b …
Run Code Online (Sandbox Code Playgroud)

android android-image android-camera android-bitmap

2
推荐指数
1
解决办法
2万
查看次数

毕加索大图下载

我读过有关Picasso图像下载lib但有一个问题我无法解决它.这是大图像下载.当我有大图像,即2000 x 1920时,它被压碎(内存不足).

我怎么能解决这个问题?

Picasso.with(上下文).load(myUrl).into(ImageView的);

android bitmap imagedownload picasso android-bitmap

2
推荐指数
1
解决办法
3248
查看次数

将Bitmap从一个活动传递到另一个活动时失败的BINDER TRANSACTION

我想将图像作为位图从一个活动传递到另一个活动.我想知道是否可以这样做.

发送活动

Intent intent = new Intent(getApplicationContext(), BitmapActivity.class);
                Bundle b = new Bundle();
                b.putParcelable("BITMAP", bitmap);
                intent.putExtras(b);
                startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

接收活动

Bundle bb = this.getIntent().getExtras();
    b = bb.getParcelable("BITMAP");
Run Code Online (Sandbox Code Playgroud)

但我得到了!!! 失败的粘合剂交易!错误

android android-intent android-bitmap android-bundle

2
推荐指数
1
解决办法
8013
查看次数

Android:如何将HTML代码转换为图像并使用ShareIntent发送此图像?

我已使用webView将内容显示和捕获为图像,并使用共享选项发送。
但是我需要一个无需使用webview即可将html代码转换为图像的功能。
请帮我。
提前致谢。

android android-intent android-bitmap

2
推荐指数
1
解决办法
3286
查看次数

将图像转换为缩略图并保存

在我的 android 应用程序中,我使用相机创建图像,为此我使用相机 API,我必须在拍照后显示其缩略图,并且我希望将其保存在另一个文件夹中。所以我对缩略图创建器功能的输出将是图像路径,我期待一个文件输出,它是缩略图路径。我浏览了很多教程和开发人员文档,我找到了很多方法

eg : ThumbnailUtils,..
Run Code Online (Sandbox Code Playgroud)

但所有这些方法都返回位图对象或字节数组,。保存图像缩略图的最佳方法是什么。

public void manageImage() {
    /*
       other things
   */
      Model.addThumnailPath(createThumnail(imageFile));
 }

public String createThumnail(File imageFile){
    // operations

  return thumnailPath;
}
Run Code Online (Sandbox Code Playgroud)

android thumbnails android-bitmap

2
推荐指数
1
解决办法
7104
查看次数

如何在Android中发生OOM(内存不足)?

我试图从画廊或拍摄的相机中显示图像ImageView.我开始接受OOM这个过程.所以我决定找出它是如何工作的.所以我尝试了不同尺寸的图像,这里是观察,

我试图加载一个19KB的图像,ImageView并得到以下错误信息.无法分配4915212字节分配570452空闲字节和557KB直到OOM2MB映像我无法分配31961100字节分配16777120空闲字节和29MB直到OOM2MB

为什么19KB图像需要大约4.6MB的主内存和2MB图像需要30 MB的主内存空间?

PS:我发现很多解决方案,比如根据显示器对图像进行下采样,但没有一个解释这种行为.

android imageview android-bitmap

2
推荐指数
1
解决办法
589
查看次数

如何在whatsapp中对图像进行子采样/调整大小

通过whatsapp发送图像时,您可以看到您在图像视图中发送的图像非常好

例如,我发送了两张图片给我的朋友

  • 第一张图片的大小:1296像素 X 2304像素

  • 第二图像的大小:1920像素 × 1080像素

这个图像太大,因此whatsapp必须先缩放它们才能在imageview中显示它们

  • 通过whatapp 333像素 X 339像素缩放后的第一图像的大小

  • 通过whatsapp 333像素 X 187像素缩放后的第二图像的大小

如您所见,宽度相同,只有高度不同.我试图找出whatapp如何缩放这些图像,但我的方法给了我一个不同维度的图像远离whatsapp的图像

方法1

private void resizeImage(){

Uri selectedImage = imageReturnedIntent.getData();
                      d("image url is " + selectedImage);
                      InputStream imageStream = getContentResolver().openInputStream(selectedImage);
                       BitmapFactory.decodeStream(imageStream,null, options);
                      imageHeight = options.outHeight;
                      imageWidth = options.outWidth;

                      options.inSampleSize = calculateInSampleSize(options,reqWidth,reqHeight);
                      options.inJustDecodeBounds = false;
                      bitmap = BitmapFactory.decodeStream(imageStream,null, options);

}
private int calculateInSampleSize(BitmapFactory.Options options, int reqWidth , int reqHeght){

    int height = options.outHeight;
    int width = options . outWidth; …
Run Code Online (Sandbox Code Playgroud)

android android-image android-imageview android-bitmap

2
推荐指数
1
解决办法
4594
查看次数

如何在Android的Glide中显示数据库图像?

SqliteDatabase我的申请中有一个。在此数据库中,我保存了StingBlob(用于保存图像)。该图像使用byte []保存在应用程序中。我借助以下代码将该图像转换为Bitmap:

    byte[] Recycler_imageByte;
    Bitmap Recycler_theImage;

holder.Recycler_imageByte = data.get(position).getKey_image();
ByteArrayInputStream imageStream = new ByteArrayInputStream(holder.Recycler_imageByte);
holder.Recycler_theImage = BitmapFactory.decodeStream(imageStream);
Run Code Online (Sandbox Code Playgroud)

我想在Glidelibary中显示此图像,我编写了以下代码:

Glide.with(context).load(holder.Recycler_theImage).asBitmap().into(holder.Recycler_adapter_image);
Run Code Online (Sandbox Code Playgroud)

但是,当我运行应用程序时,显示以下错误:

03-15 10:23:14.311 22440-22440/com.tellfa.dastanak E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.tellfa.dastanak, PID: 22440
java.lang.IllegalArgumentException: Unknown type class android.graphics.Bitmap. You must provide a Model of a type for which there is a registered ModelLoader, if you are using a custom model, you must first call Glide#register with a ModelLoaderFactory for your custom model class …
Run Code Online (Sandbox Code Playgroud)

android bitmap android-bitmap android-glide

2
推荐指数
1
解决办法
2599
查看次数

Android Widget Arc Progress

在我的 android 应用程序中,我有几个小部件,我希望它们看起来像这些进度条。

在此处输入图片说明

现在我知道我不能使用任何外部库来做到这一点,因为小部件不支持大多数自定义视图。我见过大多数开发人员使用位图来绘制这样的东西。我可以设法画一个完整的圆圈。但是如何使用位图绘制这个弧形进度条或者还有其他方法吗?

感谢你的帮助。谢谢!

android android-widget android-progressbar android-bitmap

2
推荐指数
1
解决办法
2428
查看次数

如何将位图保存到Firebase

我创建了一个简单的应用程序来裁剪图像.现在我想将此图像保存到Fire基座.

photo.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            //Intent imageDownload = new 
Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
      Intent imageDownload=new Intent();
      imageDownload.setAction(Intent.ACTION_GET_CONTENT);
      imageDownload.setType("image/*");
      imageDownload.putExtra("crop", "true");
      imageDownload.putExtra("aspectX", 1);
      imageDownload.putExtra("aspectY", 1);
      imageDownload.putExtra("outputX", 200);
      imageDownload.putExtra("outputY", 200);
      imageDownload.putExtra("return-data", true);
      startActivityForResult(imageDownload, GALLERY_REQUEST_CODE);


        }
    });
 }
  @Override
protected void onActivityResult(int requestCode, int resultCode, Intent 
  data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode == GALLERY_REQUEST_CODE && resultCode == RESULT_OK && 
   data != null) {
        Bundle extras = data.getExtras();
        image = extras.getParcelable("data");
        photo.setImageBitmap(image);

   }






}
Run Code Online (Sandbox Code Playgroud)

如何将此图像保存到Firebase.我尝试了很多教程,但没能成功.请用简单的代码验证.

android firebase android-bitmap firebase-storage

2
推荐指数
2
解决办法
2万
查看次数