diff options
author | codeworkx <codeworkx@cyanogenmod.org> | 2016-01-05 23:35:42 +0100 |
---|---|---|
committer | Arne Coucheron <arco68@gmail.com> | 2018-01-26 01:01:01 +0100 |
commit | d81de0d9b5a3b34a5356dd9b980adbfecc7e8f29 (patch) | |
tree | 4768630ba29c8900a688bc53b72753ec97b15342 /src | |
parent | 021b55f760f74d0d3f2054574df5336e6194b35a (diff) | |
download | android_packages_apps_Snap-d81de0d9b5a3b34a5356dd9b980adbfecc7e8f29.tar.gz android_packages_apps_Snap-d81de0d9b5a3b34a5356dd9b980adbfecc7e8f29.tar.bz2 android_packages_apps_Snap-d81de0d9b5a3b34a5356dd9b980adbfecc7e8f29.zip |
option to set manufacturer specific parameters on startup
Change-Id: If734a7f4c25465876e657926700763b9169d786e
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/camera/CameraHolder.java | 22 | ||||
-rw-r--r-- | src/com/android/camera/app/CameraApp.java | 9 |
2 files changed, 31 insertions, 0 deletions
diff --git a/src/com/android/camera/CameraHolder.java b/src/com/android/camera/CameraHolder.java index 0797fad44..086d211e2 100644 --- a/src/com/android/camera/CameraHolder.java +++ b/src/com/android/camera/CameraHolder.java @@ -1,5 +1,6 @@ /* * Copyright (C) 2009 The Android Open Source Project + * 2015 The CyanogenMod Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,6 +19,7 @@ package com.android.camera; import static com.android.camera.util.CameraUtil.Assert; +import android.content.Context; import android.hardware.Camera.CameraInfo; import android.hardware.Camera.Parameters; import android.os.Build; @@ -26,6 +28,9 @@ import android.os.HandlerThread; import android.os.Looper; import android.os.Message; import android.util.Log; +import org.codeaurora.snapcam.R; + +import com.android.camera.app.CameraApp; import com.android.camera.CameraManager.CameraProxy; @@ -191,6 +196,9 @@ public class CameraHolder { public synchronized CameraProxy open( Handler handler, int cameraId, CameraManager.CameraOpenErrorCallback cb) { + + Context context = CameraApp.getContext(); + if (DEBUG_OPEN_RELEASE) { collectState(cameraId, mCameraDevice); if (mCameraOpened) { @@ -223,6 +231,20 @@ public class CameraHolder { } mCameraId = cameraId; mParameters = mCameraDevice.getCamera().getParameters(); + + // Manufacturer specific key values + String manufacturerKeyValues = context.getResources().getString(R.string.manufacturer_key_values); + if (manufacturerKeyValues != null && !manufacturerKeyValues.isEmpty()) { + String[] keyValuesArray = manufacturerKeyValues.split(";"); + for (String kvPair : keyValuesArray) { + String[] manufacturerParamPair = kvPair.split("="); + if (!manufacturerParamPair[0].isEmpty() && !manufacturerParamPair[1].isEmpty()) { + Log.d(TAG, "Set manufacturer specific parameter " + manufacturerParamPair[0] + "=" + manufacturerParamPair[1]); + mParameters.set(manufacturerParamPair[0], manufacturerParamPair[1]); + } + } + mCameraDevice.setParameters(mParameters); + } } else { if (!mCameraDevice.reconnect(handler, cb)) { Log.e(TAG, "fail to reconnect Camera:" + mCameraId + ", aborting."); diff --git a/src/com/android/camera/app/CameraApp.java b/src/com/android/camera/app/CameraApp.java index 837e22cd1..3a631ece1 100644 --- a/src/com/android/camera/app/CameraApp.java +++ b/src/com/android/camera/app/CameraApp.java @@ -18,6 +18,7 @@ package com.android.camera.app; import android.app.ActivityManager; import android.app.Application; +import android.content.Context; import com.android.camera.SDCard; import com.android.camera.util.CameraUtil; @@ -28,9 +29,12 @@ public class CameraApp extends Application { private static long mMaxSystemMemory; public static boolean mIsLowMemoryDevice = false; private static final long LOW_MEMORY_DEVICE_THRESHOLD = 2L*1024*1024*1024; + private static Application mApp = null; + @Override public void onCreate() { super.onCreate(); + mApp = this; ActivityManager actManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE); ActivityManager.MemoryInfo memInfo = new ActivityManager.MemoryInfo(); actManager.getMemoryInfo(memInfo); @@ -43,5 +47,10 @@ public class CameraApp extends Application { CameraUtil.initialize(this); SDCard.initialize(this); } + + public static Context getContext() + { + return mApp.getApplicationContext(); + } } |