[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. Gray码 (格雷码) 【二进制】

    以下内容是看了Matrix67的关于二进制的blog(Link)的一点总结与摘录. Gray码,中文“格雷码”,是一种特殊的编码,相邻两个格雷码的二进制表示中有且仅有一位不同,且 n 阶 Gray 码 ...

  2. maven解决.lastUpdated maven无法下载jar

    话说,这个问题困扰了我两个多月了已经~~~ 后来发现不知道被谁动了,把我的仓库没有放到仓库组里面~~~ 用admin登录进去,默认密码是admin123,然后看截图操作吧. (记得删除你本地报错说** ...

  3. Ubuntu_10.04下Hadoop-0.20.2集群配置手册

    Ubuntu_10.04下Hadoop-0.20.2集群配置手册 一.软硬件环境的准备 下面的文章来自hadoopor.com,我先交待一下我自己的环境: 两台机器,每台机器上面两个虚机(vmware ...

  4. SecureCRT如何设置字符编码和外观?

    SecureCRT是SSH的很好的工具,但是使用的时候,一般都习惯自己的风格. 怎么设置呢? 选项->会话选项->外观 如下图所示

  5. bzoj3043

    这道题完全没想出来,引自 http://blog.csdn.net/willinglive/article/details/38419573的题解 对于带有“将一段区间内的每个数全部加上某个值”这种操 ...

  6. -_-#【Mac】MacVim

    MacVim安装与配置 Mac开发利器之程序员编辑器MacVim学习总结 Git时代的VIM不完全使用教程 zencoding-vim This repository has moved to htt ...

  7. [Locked] Largest BST Subtree

    Largest BST Subtree Given a binary tree, find the largest subtree which is a Binary Search Tree (BST ...

  8. lightoj 1407 2-sat

    这题的英语either...or....很蛋疼: m中,1:x与y至少一个出席:2:x出席,y随便,x不出席,y也不出席----这有个坑,可以推出y出席x也一定出席(这个关系必须要连上):3x与y至少 ...

  9. Jenkins 二:邮件配置

    默认邮件的配置 假设管理员邮箱是 user1@domain1.com,密码是pw1. 1. 打开“系统管理”-> “系统设置”. 2. 找到“Jenkins Location”-> “系统 ...

  10. PHP 生命周期,Opcode 缓存。

    1.php 执行的生命周期. 用户发出请求---->.php--->词典扫描--->解析--->创建Opcode--->处理opcode--->响应 这就是php的 ...