首页 > 其他分享 >拍照问题

拍照问题

时间:2023-06-20 17:06:17浏览次数:46  
标签:拍照 Media devices 问题 values new android MediaStore


拍照问题对不同的版本不同 有时候结果为空

public boolean hasImageCaptureBug() {

    // list of known devices that have the bug
    ArrayList<String> devices = new ArrayList<String>();
    devices.add("android-devphone1/dream_devphone/dream");
    devices.add("generic/sdk/generic");
    devices.add("vodafone/vfpioneer/sapphire");
    devices.add("tmobile/kila/dream");
    devices.add("verizon/voles/sholes");
    devices.add("google_ion/google_ion/sapphire");

    return devices.contains(android.os.Build.BRAND + "/" + android.os.Build.PRODUCT + "/"
            + android.os.Build.DEVICE);

}

 

参看

http://code.google.com/p/android/issues/detail?id=1480

Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
if (hasImageCaptureBug()) {
    i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File("/sdcard/tmp")));
} else {
    i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
}
startActivityForResult(i, mRequestCode);

 

protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
     switch (requestCode) {
         case GlobalConstants.IMAGE_CAPTURE:
                 Uri u;
             if (hasImageCaptureBug()) {
                 File fi = new File("/sdcard/tmp");
                 try {
                     u = Uri.parse(android.provider.MediaStore.Images.Media.insertImage(getContentResolver(), fi.getAbsolutePath(), null, null));
                     if (!fi.delete()) {
                         Log.i(t, "Failed to delete " + fi);
                     }
                 } catch (FileNotFoundException e) {
                     e.printStackTrace();
                 }
             } else {
                        u = intent.getData();
                }
    }

 

其他的插入操作

File imageDirectory = new File("/sdcard/signifio");
          String path = imageDirectory.toString().toLowerCase();
           String name = imageDirectory.getName().toLowerCase();


            ContentValues values = new ContentValues(); 
            values.put(Media.TITLE, "Image"); 
            values.put(Images.Media.BUCKET_ID, path.hashCode());
            values.put(Images.Media.BUCKET_DISPLAY_NAME,name);

            values.put(Images.Media.MIME_TYPE, "image/jpeg");
            values.put(Media.DESCRIPTION, "Image capture by camera");
           values.put("_data", "/sdcard/signifio/1111.jpg");
         uri = getContentResolver().insert( Media.EXTERNAL_CONTENT_URI , values);
            Intent i = new Intent("android.media.action.IMAGE_CAPTURE"); 

            i.putExtra(MediaStore.EXTRA_OUTPUT, uri);

            startActivityForResult(i, 0);

 

private void saveFullImage() {
  Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
  File file = new File(Environment.getExternalStorageDirectory(), "test.jpg");
  outputFileUri = Uri.fromFile(file);
  intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
  startActivityForResult(intent, TAKE_PICTURE);
}

 


标签:拍照,Media,devices,问题,values,new,android,MediaStore
From: https://blog.51cto.com/u_16166892/6523945

相关文章

  • TableRow 背景问题以及修改对话框标题高度或者图片
    <TableRowxmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/admin_row"android:layout_width="fill_parent"android:layout_height="wrap_content"......
  • 用代码从xml整形数组中取出每个整数以及tabHost使用light主题的问题
    res/values/integers.xml<?xmlversion="1.0"encoding="utf-8"?><resources><integer-arrayname="UserBases"><item>2</item><item>8</item><it......
  • 还在为丢数据发愁吗?OM302完美解决问题
    前一阵,东东和好友看到了一辆非常帅气的小车,两人就此是哪款车型展开了激烈的讨论,最后好友靠着某度的搜索结果给予东东一记强烈打击取得了胜利,但是为此,他也付出了惨烈的代价,那就是在那一段时间,对应车型的销售们疯狂的对他进行电话轰炸,问他是不是要买车... 之后好友所在的企业又因......
  • Zabbix的详细安装部署,及安装过程中遇到的问题及解决办法。
    Zabbix的详细安装部署1.架构Zabbix由几个主要的功能组件组成,其职责如下所示。SERVERZabbixserver是Zabbixagent向其报告可用性、系统完整性信息和统计信息的核心组件。是存储所有配置信息、统计信息和操作信息的核心存储库。数据库所有配置信息以及Zabbix收集到的数......
  • SpringMVC中接收前端传递的参数,设置了编码过滤器filter,但在控制台中还是出现乱码问题
    SpringMVC中接收前端传递的参数,设置了编码过滤器filter,但在控制台中还是出现乱码问题。 在SpringMVC中遇到乱码问题不要慌,先配个SpringMVC的自带编码过滤器试试 <filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.spr......
  • ABAQUS 模拟过盈配合解决材料选择及公差带设计等问题
    背景在原始设计中,某型发动机的凸轮轴和位置传感器触发轮曾有在旋转过程中脱出的现象产生,究其原因,是因为两者过盈量设计不合理,故需重新修改其过盈配合公差带。对于过盈量上限,增大的幅度不可过大,否则会引起孔件的变形量过大甚至破坏,触发器变形量过大还会影响备用件的更换,增大了......
  • 【HarmonyOS】如何解决智能穿戴设备中swiper组件右滑与系统退出应用冲突问题(API6 JS)
    【关键字】API6、JS、swiper组件、智能穿戴、setSwipeToDismiss【问题描述】使用API6JS开发智能穿戴设备HarmonyOS应用,在首页使用swiper组件时,右滑swiper时会退出应用,无法实现swiper右滑效果,效果如下所示:【问题分析与原因】当页面栈只有一个页面时,默认滑动事件分发会让应用退出,而......
  • 【AGC】云数据库返回403client token authorization fail问题
    【关键字】AGC、云数据库、403【问题描述】有开发者反馈在使用AGC云数据库,拿到access_token用户登录返回403clienttokenauthorizationfail的问题。具体如下所述:用接口:https://connect-drcn.dbankcloud.cn/agc/apigw/oauth2/v1/token拿到了access_token,但用这个token去登录时:htt......
  • 【HarmonyOS】端云一体化项目中打开Visual文件报错问题
    【关键字】端云一体化、低代码、ArkTS、Visual文件【问题描述】在使用端云一体化商场模板的过程中,突然遇到了无法打开Visual文件的情况,DevEcoStudio提示报错“JSONschemavalidationerror:data/visualModel/value/children/0/value/children/1/value/children/0/value/children/......
  • 【HMS Core】Health Kit健康数据采样, 原子采样数据问题
    【问题描述】1.体脂数据中的肌肉量和水份量是如何获得的,都有些什么?体脂数据中的体重,体脂是用户自己上传的,然后通过计算公式得到数据吗2.日常活动统计数据包含什么内容,怎么获取这些数据?3.锻炼记录概要数据包含什么内容?是统计数据吗?获取方式呢?4.心脏健康数据测的是心电图相关记录。......