标签: android-camera-intent

Camera Intent onActivityResult 返回 null

我正在尝试拍照并将其保存到自定义位置-

public void SavePhoto(View view){

    Intent imageIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());

    File imagesFolder = new File(Environment.getExternalStorageDirectory(), "WorkingWithPhotosApp");
    imagesFolder.mkdirs();

    File image = new File(imagesFolder, "QR_" + timeStamp + ".png");
    Uri uriSavedImage = Uri.fromFile(image);

    imageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
    startActivityForResult(imageIntent, REQUEST_IMAGE_CAPTURE);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(data==null){
        Toast.makeText(MainActivity.this, "Data is null", Toast.LENGTH_SHORT).show();
    }
    else{
        if (requestCode == REQUEST_IMAGE_CAPTURE && resultCode == RESULT_OK) {
            Bundle extras = data.getExtras();
            Bitmap imageBitmap = (Bitmap) extras.get("data");
            ImageView mImageView=(ImageView)findViewById(R.id.imageView); …
Run Code Online (Sandbox Code Playgroud)

android android-camera-intent

6
推荐指数
1
解决办法
9026
查看次数

Android Camera意图创建两个文件

我正在制作一个拍摄照片的程序,然后显示它的缩略图.使用模拟器时一切顺利,丢弃按钮删除照片.但是在真实设备上,相机意图将图像保存在imageUri变量上,第二个命名就像我刚刚打开相机并自己拍照一样.

private static final int CAMERA_PIC_REQUEST = 1337;  
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.camera);

    //start camera
    values = new ContentValues();
    values.put(MediaStore.Images.Media.TITLE, "New Picture");
    values.put(MediaStore.Images.Media.DESCRIPTION,"From your Camera");
    imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
    image = (ImageView) findViewById(R.id.ImageView01);
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
    startActivityForResult(intent, CAMERA_PIC_REQUEST);


    //save the image buttons
    Button save = (Button) findViewById(R.id.Button01);
    Button close = (Button) findViewById(R.id.Button02);
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if …
Run Code Online (Sandbox Code Playgroud)

android android-camera android-camera-intent

5
推荐指数
1
解决办法
4276
查看次数

从相机拍摄的android图片非常小

我试图从相机捕获图像,压缩它,然后将其存储到SD卡.如果我使用下面的代码直接将其保存到SD卡,我会得到完整的图像.但是,如果我尝试在系统中加载图像,我会得到一个超小的图像大小,如320 x 240而不是完整的5 mp图像.

        Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    intent.putExtra(MediaStore.EXTRA_OUTPUT, getImageUri());
    startActivityForResult(intent, CAMERA_PIC_REQUEST);  
Run Code Online (Sandbox Code Playgroud)

getImageURI()的位置

    private Uri getImageUri() {
    // Store image in dcim
    file = new File(Environment.getExternalStorageDirectory() + "/DCIM","itshelp.jpg");
    imgUri = Uri.fromFile(file);
    file.deleteOnExit();
       Log.e("syS","file is at "+imgUri);
    return imgUri;
}
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试将其保存到内部存储器时,我使用以下代码来获取微小的图像:

    public void imageFromCamera() { //code to retrieve image
    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
    startActivityForResult(intent, CAMERA_PIC_REQUEST);  
    }
Run Code Online (Sandbox Code Playgroud)

在我的startActivitForResult中我有以下内容:

    @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == CAMERA_PIC_REQUEST && resultCode == RESULT_OK) { …
Run Code Online (Sandbox Code Playgroud)

android android-camera android-camera-intent

5
推荐指数
1
解决办法
4106
查看次数

在Android中将相机视图锁定为横向模式

我想将我的摄像机视图锁定到" 风景 "模式.当我点击我的应用程序中的简单按钮时,该时间设备的摄像机将打开,并且该摄像机应锁定为" 风景模式 ".谁能知道这个问题的解决方案?

我在"CaptureImageActivity.java"活动中使用此代码.因此,在执行此活动后,我的系统的相机将打开.

btn1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {

            Intent i=new Intent(android.provider.MediaStore. ACTION_IMAGE_CAPTURE);
            i.putExtra(android.provider.MediaStore.EXTRA_SCREEN_ORIENTATION,ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);


            startActivityForResult(i,1000);

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

我想将相机视图锁定到"LandScape模式".并根据解决方案

<activity android:name=".CaptureImageActivity"
    android:screenOrientation="landscape"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)

只有"CaptureImageActivity"活动被锁定为"LandScape模式".

android android-camera-intent

5
推荐指数
1
解决办法
7216
查看次数

一旦发送相机意图就会调用onActivityResult

我正在使用相机意图在我的应用程序中启动相机,但一旦意图被解雇onActivityResult就会被解雇,我甚至还没有拍照.

当我拍照时,选择它并返回我的活动,onActivityResult根本不会被调用

这是我如何启动相机

PackageManager pm = getPackageManager();
    if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

        File tempDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),"Mobile Map");
        if (!tempDir.exists()) {
            if (!tempDir.mkdir()) {
                Toast.makeText(this,
                        "Please check SD card! Image shot is impossible!",
                        Toast.LENGTH_SHORT).show();
            }
        }

        String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss",Locale.US).format(new Date());
        File mediaFile = new File(tempDir.getPath() + File.separator+ "IMG_" + timeStamp + ".jpg");

        photoUri = Uri.fromFile(mediaFile);
        camera.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
        startActivityForResult(camera, CAMERA_REQUEST);
    } else {
        Toast.makeText(this,"This device does not have a rear facing camera",Toast.LENGTH_SHORT).show(); …
Run Code Online (Sandbox Code Playgroud)

android android-intent android-camera-intent

5
推荐指数
1
解决办法
757
查看次数

如何在Android中进行位图压缩后保存Exif数据

使用相机意图拍摄照片后,我压缩位图以降低文件大小.问题是压缩后,它会丢失所有EXIF数据.我在检索原始EXIF数据时没有问题,但是,如何在压缩后将此EXIFF数据添加到字节数组中?

(我的猜测是取字节数组并创建一个位图,然后添加旧的EXIF数据,然后再添加到字节数组,但这是一个移动应用程序,我拍了很多图像,所以我不想浪费记忆)

这是我压缩位图并保存到字节数组输出流的代码:

myBitmapImage.compress(Bitmap.CompressFormat.JPEG, 75, outputstream);//Losing EXIF data here
byte[] ba = outputstream.toByteArray(); // How to add EXIF data here ?
Run Code Online (Sandbox Code Playgroud)

android exif android-camera-intent android-bitmap

5
推荐指数
1
解决办法
3306
查看次数

onActivityResult不从viewPager片段调用

嗨我在主片段中使用viewPager和fragmnets.我试图从图库或相机获取图像到位图,但在选择照片和startActivityForResult后它没有捕获onActivityResult ...

这是我如何调用startActivityForResult:

private void setAvatarDialog(){
        final CharSequence[] options = {"Choose from Gallery", "Take Photo" };

        String title = getString(R.string.alertDialog_editProfile_updateAvatar_title);
        String negative = getString(R.string.alertDialog_editProfile_updateAvatar_negative);

        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setTitle(title);
        builder.setItems(options, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                if (options[which].equals(options[0])) {
                    mIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
                    mIntent.setType("image/*");
                    startActivityForResult(Intent.createChooser(mIntent, "Select File"), SELECT_FILE);
                } else if (options[which].equals(options[1])) {
                    mIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                    startActivityForResult(mIntent, REQUEST_CAMERA);
                }
                dialog.dismiss();
            }
        });
        builder.setNegativeButton(negative, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int …
Run Code Online (Sandbox Code Playgroud)

android android-gallery android-camera-intent onactivityresult

5
推荐指数
1
解决办法
5307
查看次数

Android相机意图不应允许将图像保存到图库并将其存储在指定路径中

当我使用此代码 - >

Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
Run Code Online (Sandbox Code Playgroud)

我可以将图像保存到指定的路径,但它也保存到库中.我不想将图像保存到图库.请帮忙.

提前感谢您宝贵的时间.

android android-intent android-camera-intent

5
推荐指数
1
解决办法
2044
查看次数

dlopen失败:未找到库"/system/lib64/libhwuibp.so":Honor 4C 64位八核CPU

每当我尝试通过意图打开相机/图库时,我在我的荣耀4C手机,带有64位八核CPU的Android版本6.0中收到此错误.

load:so =/system/lib64/libhwuibp.so

dlopen失败:未找到库"/system/lib64/libhwuibp.so"

基本上我试图在OpenCV-2.4.13.1-android-sdk so文件的帮助下裁剪图像.但这个错误似乎与设备相关,因为在其他手机应用程序工作完全正常,任何人都可以帮助我吗?

64-bit android opencv android-camera-intent android-6.0-marshmallow

5
推荐指数
1
解决办法
2961
查看次数

无法在要在Firebase测试实验室上运行的Espresso脚本中找到检测不同设备的相机按钮的解决方案

我必须使用Espresso创建脚本来在Firebase测试实验室中测试我的应用程序。我的应用程序使用相机捕获图像,并且我已打开默认的相机应用程序。

为了在我的设备上进行测试,我给了我正在使用的测试设备的软件包名称。问题在于,不同Android设备的相机应用程序包名称不同,我们不知道每个。硬编码程序包名称也不是一件好事。

我已经搜索出了,但是找不到找到解决方案的方法。

在此先感谢。

testing android android-camera-intent android-espresso firebase-test-lab

5
推荐指数
1
解决办法
123
查看次数