在vendor/sec/sec_proprietary/smdkc110/libcamera/SecCameraHWInterface.cpp中,当对硬件设置完毕后,通知packages/apps/Camera/src/com/android/camera/Camera.java,zoom已经完成。

status_t CameraHardwareSec::sendCommand(int32_t command, int32_t arg1, int32_t arg2) { if( command == ZOOM_COMMAND_ID ) { if( arg1 == mZoomLevel ) { return NO_ERROR; } LOGE("startZoom (%s),arg1:%ld,mZoomLevel:%ld", __FUNCTION__,arg1,mZoomLevel); //mZoomLevel = arg1; //mSecCamera->startZoom(mZoomLevel); if( arg1>mZoomLevel ) { LOGE("zoomIn (%s)", __FUNCTION__); mZoomLevel = arg1; mSecCamera->zoomIn(mZoomLevel); } else if( arg1<mZoomLevel ) { LOGE("zoomOut (%s)", __FUNCTION__); mZoomLevel = arg1; mSecCamera->zoomOut(mZoomLevel); } //add by hui if (mMsgEnabled & CAMERA_MSG_ZOOM) mNotifyCb(CAMERA_MSG_ZOOM, true, 1, mCallbackCookie); } return NO_ERROR; }

应用层或者硬件层设置成功,可以对应用程序进行成功后的相关设置。例如把zoomin按钮显示出来。

private final class ZoomCallback implements android.hardware.Camera.ZoomCallback { public void onZoomUpdate(int zoomValue, boolean stopped, android.hardware.Camera camera) { Log.v(TAG, "ZoomCallback: zoom value=" + zoomValue + ". stopped=" + stopped); mZoomValue = zoomValue; // Keep mParameters up to date. We do not getParameter again in // takePicture. If we do not do this, wrong zoom value will be set. mParameters.setZoom(zoomValue); // We only care if the zoom is stopped. mZooming is set to true when // we start smooth zoom. if (stopped) mZooming = false; updateZoomButtonsEnabled(); } }

更多相关文章

  1. [笔记]Sensor概述
  2. android完全退出程序的几种方式
  3. Android(安卓)应用开发笔记 - 切换图片(ImageSwitcher)
  4. 监听Android键盘上的按钮
  5. android之RadioButton设置setChecked(true)失效
  6. Android(安卓)开发facebook
  7. Android打造带删除的EditText并且实现输入框密码显示、隐藏
  8. Android开发者指南(10) —— Android(安卓)API Levels
  9. Android(安卓)APP 启动优化(冷启动)

随机推荐

  1. Android的OpenGL学习笔记(1)
  2. Android 条码扫描程序源码
  3. android中将中文以粗体显示
  4. Android程序横竖屏切换
  5. 对比onSaveInstanceState和onRestoreInst
  6. Android(安卓)getIdentifier获取资源ID
  7. 关于LinearLayout布局中,子控件平分宽度
  8. android获取3G或wifi流量信息
  9. Android使用selector改变和文本框文字的
  10. TextView设置一行最多显示6个字是什么属