[DESCRIPTION]
修改默认拍照size

[SOLUTION]

修改默认的capture size,改变camera feature table的FID_CAP_SIZE default值不起作用。 因为camera AP并没有从feature table读取FID_CAP_SIZE的default值。

下面介绍在AP端修改默认的capture size,分为在初始化时候和restore时候修改。以默认capture size 1600x1200为例。

修改文件:Camera.java (alps\packages\apps\camera\src\com\android\camera)。

1、在AP初始化设置参数的时候修改默认的capture size。

private void updateCameraParametersPreference()方法中,将

if (pictureSize == null) {

CameraSettings.initialCameraPictureSize(this, mParameters, camOri);

} else {

List<Size> supported = mParameters.getSupportedPictureSizes();

CameraSettings.setCameraPictureSize(pictureSize, supported,

mParameters, camOri);

}

改为:

if (pictureSize == null) {

List<Size> supported = mParameters.getSupportedPictureSizes();

if(!(CameraSettings.setCameraPictureSize("1600x1200", supported,

mParameters, camOri)))

{

CameraSettings.initialCameraPictureSize(this, mParameters, camOri);

}

else

{

SharedPreferences.Editor editor = ComboPreferences

.get(this).edit();

editor.putString(CameraSettings.KEY_PICTURE_SIZE, "1600x1200");

editor.apply();

}

} else {

List<Size> supported = mParameters.getSupportedPictureSizes();

CameraSettings.setCameraPictureSize(pictureSize, supported,

mParameters, camOri);

}

2、恢复默认参数的时候,需要添加默认的capture size。

private void restorePreferences()方法中,

在CameraSettings.restorePreferences(Camera.this, mPreferences,mParameters);

之后添加:

List<Size> supported = mParameters.getSupportedPictureSizes();

int camOri = CameraHolder.instance().getCameraInfo()[mCameraId].orientation;

if (LOGI) Log.i(TAG, "supported="+supported+",camOri="+camOri);

if(camOri!=-1&&supported!=null)

{

if (LOGI) Log.i(TAG, "setCameraPictureSize=");

if(CameraSettings.setCameraPictureSize("1600x1200", supported,mParameters, camOri))

{

SharedPreferences.Editor editor = ComboPreferences

.get(this).edit();

editor.putString(CameraSettings.KEY_PICTURE_SIZE, "1600x1200");

editor.apply();

}

}

另外,对于前后摄像头不同要求,根据需要进行判断。

CameraInfo info = CameraHolder.instance().getCameraInfo()[mCameraId];

if(info.facing == CameraInfo.CAMERA_FACING_FRONT){

//sub sensor

}else{

//main sensor

}

如何修改mtk android 默认拍照size的更多相关文章

  1. MTK Android 默认值修改笔记

    1.设置菜单: 1.1位置信息(Location)默认关闭: 请将 alps\frameworks\base\packages\SettingsProvider\res\values\default. ...

  2. Android Launcher分析和修改1——Launcher默认界面配置(default_workspace)

    最近工作都在修改Launcher,所以打算把分析源码和修改源码的过程记录下来,最近会写一些关于Launcher的分析和修改博文.因为我是修改4.0.3的Launcher,所以后面文章里面的Launch ...

  3. 修改Android默认背光值

    /********************************************************************* * 修改Android默认背光值 * 说明: * 本文主要 ...

  4. Android默认系统声音/大小修改及配置【转】

    本文转载自:http://blog.csdn.net/a8316124/article/details/60574859 在做定制需求的时候,需要修改系统通知的声音,将其禁用掉,避免第三方应用发送通知 ...

  5. MTK Android Driver :Camera

    MTK Android Driver :camera 1.相关代码位置:mediatek\config\XXXX(红色字为具体的项目名) 文件:ProjectConfig.mk CUSTOM_KERN ...

  6. Android Camera2 拍照(二)——使用TextureView

    原文:Android Camera2 拍照(二)--使用TextureView 上一篇博文简单介绍了使用Camera2 API拍摄照片,并使用SurfaceView作为预览界面.实际上,相对于Surf ...

  7. 如何将Android默认的Camra程序导入到eclipse中

    由于工作需要将camera源码导入到Eclipse中,找了很多的方法,现将自己的整理发出来.... 由于开发的要求,需要将Android默认的Camra程序导入到eclipse中,进行修改和再开发. ...

  8. MTK Android O1平台预置apk

    在MTK Android O1平台预置apk为可卸载时.预置到旧的路径system/vendor/operator/app会编译报错,"You cannot install files to ...

  9. 修改Yii2的默认语言language为中文zh-CN的方法

    如果用的语言是en-US的话,网页加载速度很慢,因为要加载国外镜像或者链接什么的,使用zh-CN就直接加载国内链接或者CDN,速度比较快: ------------------------------ ...

随机推荐

  1. start-tomcat7.launch

    <?xml version="1.0" encoding="UTF-8" standalone="no"?> <launc ...

  2. 转 一些shell经验

    http://www.cnblogs.com/xublogs/archive/2010/03/16/2292254.html http://www.cnblogs.com/stephen-liu74/ ...

  3. BZOJ 1019 汉诺塔

    Description 汉诺塔由三根柱子(分别用A B C表示)和n个大小互不相同的空心盘子组成.一开始n个盘子都摞在柱子A上,大的在下面,小的在上面,形成了一个塔状的锥形体. 对汉诺塔的一次合法的操 ...

  4. 【技术贴】解决使用maven jetty启动后无法加载修改过后的静态资源

    如何使用jetty自动热部署修改后的所有文件,比如js,jpg,class等,哇咔咔 太爽啦比tomcat舒服多了. jetty模式是不能修改js文件的,比如你现在调试前端js,发现在myeclips ...

  5. Linux Kernel 本地拒绝服务漏洞

    漏洞名称: Linux Kernel 本地拒绝服务漏洞 CNNVD编号: CNNVD-201308-090 发布时间: 2013-08-08 更新时间: 2013-08-08 危害等级:    漏洞类 ...

  6. sed删除文本第一个匹配行

    源文本如下,要求删除第一个为happy-123456的行. ----------------------------- aaaaaaa happy- bbbbbb asdasawe happy- ds ...

  7. C#怎么得到主机名,IP,MAC

    一:基础知识 a: Dns 类 提供简单的域名解析功能. Dns 类是一个静态类,它从 Internet 域名系统 (DNS) 检索关于特定主机的信息. 在 IPHostEntry 类的实例中返回来自 ...

  8. Seasar2框架:AOP

    Seasar2是由日本人开发的一个框架.它通过自己定义的规约,很大程度上地减少了设定代码.但是由于这个原因,导致了框架学习初期会有比较大的跨越. AOP例子: Greeting.java packag ...

  9. MyEclipse里项目部署到tomcat上之后,tomcat webpps文件夹里为什么找不到这个项目

         今天在MyEclipse中部署了一个java web项目,然后发现报404错误,跑到tomcat目录下的webapps文件夹里并发现没有这个项目,才发现MyEclipse没有写入webapp ...

  10. HTML参考手册

    New : HTML5 中的新标签. 标签 描述 <!--...--> 定义注释. <!DOCTYPE>  定义文档类型. <a> 定义锚. <abbr> ...