[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. 协程coroutine

    协程(coroutine)顾名思义就是“协作的例程”(co-operative routines).跟具有操作系统概念的线程不一样,协程是在用户空间利用程序语言的语法语义就能实现逻辑上类似多任务的编程 ...

  2. java学习之关键字

    java语言当中的关键字,之所以存在,是为了告诉编译器如何解释一段有意义的代码段.比如说 /**需求:演示java中关键字存在的含义步骤:用class,public,static,void等说明什么是 ...

  3. Effective c++ 第一章 让自己习惯C++

    条款 01:c++是一个语言联邦而不是一种单一的语言, 它包括: 1.C语言:没有模版.没有异常.没有重载…… 2.Object-Oriented C++:class.析构函数.构造函数.封装.继承. ...

  4. Sudoku(回溯)

    Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 12075   Accepted: 6026   Special Judge ...

  5. 数学(矩阵乘法,随机化算法):POJ 3318 Matrix Multiplication

    Matrix Multiplication Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 17783   Accepted: ...

  6. 自己做的网页页面导航浏览JS/JQuery

    需求: 当页面是由一个巨大的表格构成时,浏览器自动会出现纵向和横向滚动条,这时用户浏览页面会出现很蛋疼的感受,那就是恶心的横向滚动条! 为了减缓这种蛋疼的感觉,我尝试做了这个导航器(不知道如何称呼), ...

  7. Java---类反射(1)---类反射入门和基础

    什么是类反射 ☆什么是反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方 ...

  8. sublime text3安装SublimeREPL--解决不能运行input()的问题

    原文地址:http://blog.chinaunix.net/uid-12014716-id-4269991.html 一.安装包管理器(如果已经安装可以忽略) 1.简单的安装方法:使用Ctrl+`快 ...

  9. [置顶] SpecDD系列:6个确保您执行“充分”QA测试的技巧

    确保团队执行 “足够的” 测试覆盖面是非常困难的,尤其是对敏捷开发团队来说.对于初学者而言,一个开发Sprint中要完成多少的质量保证工作才够呢?我们知道,敏捷的标准是在开发Sprint结束的时候要完 ...

  10. <一>初探js特效魅力之全选不选反选04

    初探js特效魅力04 我们在进入到公司里面工作的时候,做一个同一个项目,经常是大家分工合作,当我们写css时,一般不写在行间,因为这样会被误操作,也就是被乱删了都不知道,这样的后果是很难检查的 ,因为 ...