Loading camera/Camera.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ #define LOG_TAG "Camera" #include <utils/Log.h> #include <utils/threads.h> #include <utils/String16.h> #include <binder/IPCThreadState.h> #include <binder/IServiceManager.h> #include <binder/IMemory.h> Loading Loading @@ -70,7 +69,7 @@ Camera::~Camera() // deadlock if we call any method of ICamera here. } sp<Camera> Camera::connect(int cameraId, const String16& clientPackageName, sp<Camera> Camera::connect(int cameraId, const std::string& clientPackageName, int clientUid, int clientPid, int targetSdkVersion, bool overrideToPortrait, bool forceSlowJpegMode) { Loading camera/CameraBase.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ #include <camera/CameraBase.h> #include <camera/CameraUtils.h> #include <camera/StringUtils.h> // needed to instantiate #include <camera/Camera.h> Loading Loading @@ -58,7 +59,7 @@ status_t CameraInfo::readFromParcel(const android::Parcel* parcel) { } status_t CameraStatus::writeToParcel(android::Parcel* parcel) const { auto res = parcel->writeString16(String16(cameraId)); auto res = parcel->writeString16(toString16(cameraId)); if (res != OK) return res; res = parcel->writeInt32(status); Loading @@ -66,12 +67,12 @@ status_t CameraStatus::writeToParcel(android::Parcel* parcel) const { std::vector<String16> unavailablePhysicalIds16; for (auto& id8 : unavailablePhysicalIds) { unavailablePhysicalIds16.push_back(String16(id8)); unavailablePhysicalIds16.push_back(toString16(id8)); } res = parcel->writeString16Vector(unavailablePhysicalIds16); if (res != OK) return res; res = parcel->writeString16(String16(clientPackage)); res = parcel->writeString16(toString16(clientPackage)); return res; } Loading @@ -79,7 +80,7 @@ status_t CameraStatus::readFromParcel(const android::Parcel* parcel) { String16 tempCameraId; auto res = parcel->readString16(&tempCameraId); if (res != OK) return res; cameraId = String8(tempCameraId); cameraId = toString8(tempCameraId); res = parcel->readInt32(&status); if (res != OK) return res; Loading @@ -88,13 +89,13 @@ status_t CameraStatus::readFromParcel(const android::Parcel* parcel) { res = parcel->readString16Vector(&unavailablePhysicalIds16); if (res != OK) return res; for (auto& id16 : unavailablePhysicalIds16) { unavailablePhysicalIds.push_back(String8(id16)); unavailablePhysicalIds.push_back(toStdString(id16)); } String16 tempClientPackage; res = parcel->readString16(&tempClientPackage); if (res != OK) return res; clientPackage = String8(tempClientPackage); clientPackage = toStdString(tempClientPackage); return res; } Loading Loading @@ -140,7 +141,7 @@ const sp<::android::hardware::ICameraService> CameraBase<TCam, TCamTraits>::getC sp<IServiceManager> sm = defaultServiceManager(); sp<IBinder> binder; binder = sm->waitForService(String16(kCameraServiceName)); binder = sm->waitForService(toString16(kCameraServiceName)); if (binder == nullptr) { return nullptr; } Loading @@ -156,7 +157,7 @@ const sp<::android::hardware::ICameraService> CameraBase<TCam, TCamTraits>::getC template <typename TCam, typename TCamTraits> sp<TCam> CameraBase<TCam, TCamTraits>::connect(int cameraId, const String16& clientPackageName, const std::string& clientPackageName, int clientUid, int clientPid, int targetSdkVersion, bool overrideToPortrait, bool forceSlowJpegMode) { Loading camera/CameraSessionStats.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <utils/String16.h> #include <camera/CameraSessionStats.h> #include <camera/StringUtils.h> #include <binder/Parcel.h> Loading Loading @@ -282,8 +283,8 @@ CameraSessionStats::CameraSessionStats() : mSessionIndex(0), mCameraExtensionSessionStats() {} CameraSessionStats::CameraSessionStats(const String16& cameraId, int facing, int newCameraState, const String16& clientName, CameraSessionStats::CameraSessionStats(const std::string& cameraId, int facing, int newCameraState, const std::string& clientName, int apiLevel, bool isNdk, int32_t latencyMs, int64_t logId) : mCameraId(cameraId), mFacing(facing), Loading Loading @@ -425,10 +426,10 @@ status_t CameraSessionStats::readFromParcel(const android::Parcel* parcel) { return err; } mCameraId = id; mCameraId = toStdString(id); mFacing = facing; mNewCameraState = newCameraState; mClientName = clientName; mClientName = toStdString(clientName); mApiLevel = apiLevel; mIsNdk = isNdk; mLatencyMs = latencyMs; Loading @@ -440,7 +441,7 @@ status_t CameraSessionStats::readFromParcel(const android::Parcel* parcel) { mResultErrorCount = resultErrorCount; mDeviceError = deviceError; mStreamStats = std::move(streamStats); mUserTag = userTag; mUserTag = toStdString(userTag); mVideoStabilizationMode = videoStabilizationMode; mSessionIndex = sessionIdx; mCameraExtensionSessionStats = extStats; Loading @@ -456,7 +457,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { status_t err = OK; if ((err = parcel->writeString16(mCameraId)) != OK) { if ((err = parcel->writeString16(toString16(mCameraId))) != OK) { ALOGE("%s: Failed to write camera id!", __FUNCTION__); return err; } Loading @@ -471,7 +472,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { return err; } if ((err = parcel->writeString16(mClientName)) != OK) { if ((err = parcel->writeString16(toString16(mClientName))) != OK) { ALOGE("%s: Failed to write client name!", __FUNCTION__); return err; } Loading Loading @@ -531,7 +532,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { return err; } if ((err = parcel->writeString16(mUserTag)) != OK) { if ((err = parcel->writeString16(toString16(mUserTag))) != OK) { ALOGE("%s: Failed to write user tag!", __FUNCTION__); return err; } Loading camera/CaptureResult.cpp +11 −7 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <utils/Log.h> #include <camera/CaptureResult.h> #include <camera/StringUtils.h> #include <binder/Parcel.h> namespace android { Loading Loading @@ -47,7 +48,7 @@ status_t CaptureResultExtras::readFromParcel(const android::Parcel *parcel) { ALOGE("%s: Failed to read camera id: %d", __FUNCTION__, res); return res; } errorPhysicalCameraId = cameraId; errorPhysicalCameraId = toStdString(cameraId); } parcel->readInt64(&lastCompletedRegularFrameNumber); parcel->readInt64(&lastCompletedReprocessFrameNumber); Loading Loading @@ -75,7 +76,7 @@ status_t CaptureResultExtras::writeToParcel(android::Parcel *parcel) const { if (errorPhysicalCameraId.size() > 0) { parcel->writeBool(true); status_t res = OK; if ((res = parcel->writeString16(errorPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(errorPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; } Loading @@ -96,13 +97,15 @@ status_t CaptureResultExtras::writeToParcel(android::Parcel *parcel) const { status_t PhysicalCaptureResultInfo::readFromParcel(const android::Parcel* parcel) { status_t res; mPhysicalCameraId.setTo(u""); mPhysicalCameraId = ""; mPhysicalCameraMetadata.clear(); if ((res = parcel->readString16(&mPhysicalCameraId)) != OK) { String16 physicalCameraId; if ((res = parcel->readString16(&physicalCameraId)) != OK) { ALOGE("%s: Failed to read camera id: %d", __FUNCTION__, res); return res; } mPhysicalCameraId = toStdString(physicalCameraId); if ((res = mPhysicalCameraMetadata.readFromParcel(parcel)) != OK) { ALOGE("%s: Failed to read metadata from parcel: %d", __FUNCTION__, res); Loading @@ -113,7 +116,7 @@ status_t PhysicalCaptureResultInfo::readFromParcel(const android::Parcel* parcel status_t PhysicalCaptureResultInfo::writeToParcel(android::Parcel* parcel) const { status_t res; if ((res = parcel->writeString16(mPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(mPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; Loading Loading @@ -187,7 +190,8 @@ status_t CaptureResult::readFromParcel(android::Parcel *parcel) { return res; } mPhysicalMetadatas.emplace(mPhysicalMetadatas.end(), cameraId, physicalMetadata); mPhysicalMetadatas.emplace(mPhysicalMetadatas.end(), toStdString(cameraId), physicalMetadata); } ALOGV("%s: Read physical metadata from parcel", __FUNCTION__); Loading Loading @@ -228,7 +232,7 @@ status_t CaptureResult::writeToParcel(android::Parcel *parcel) const { return BAD_VALUE; } for (const auto& physicalMetadata : mPhysicalMetadatas) { if ((res = parcel->writeString16(physicalMetadata.mPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(physicalMetadata.mPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; Loading camera/aidl/android/hardware/ICameraService.aidl +14 −14 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ interface ICameraService */ ICamera connect(ICameraClient client, int cameraId, String opPackageName, @utf8InCpp String opPackageName, int clientUid, int clientPid, int targetSdkVersion, boolean overrideToPortrait, Loading @@ -93,9 +93,9 @@ interface ICameraService * Only supported for device HAL versions >= 3.2 */ ICameraDeviceUser connectDevice(ICameraDeviceCallbacks callbacks, String cameraId, String opPackageName, @nullable String featureId, @utf8InCpp String cameraId, @utf8InCpp String opPackageName, @nullable @utf8InCpp String featureId, int clientUid, int oomScoreOffset, int targetSdkVersion, boolean overrideToPortrait); Loading Loading @@ -139,7 +139,7 @@ interface ICameraService * Read the static camera metadata for a camera device. * Only supported for device HAL versions >= 3.2 */ CameraMetadataNative getCameraCharacteristics(String cameraId, int targetSdkVersion, CameraMetadataNative getCameraCharacteristics(@utf8InCpp String cameraId, int targetSdkVersion, boolean overrideToPortrait); /** Loading @@ -160,7 +160,7 @@ interface ICameraService /** * Read the legacy camera1 parameters into a String */ String getLegacyParameters(int cameraId); @utf8InCpp String getLegacyParameters(int cameraId); /** * apiVersion constants for supportsCameraApi Loading @@ -169,21 +169,21 @@ interface ICameraService const int API_VERSION_2 = 2; // Determines if a particular API version is supported directly for a cameraId. boolean supportsCameraApi(String cameraId, int apiVersion); boolean supportsCameraApi(@utf8InCpp String cameraId, int apiVersion); // Determines if a cameraId is a hidden physical camera of a logical multi-camera. boolean isHiddenPhysicalCamera(String cameraId); boolean isHiddenPhysicalCamera(@utf8InCpp String cameraId); // Inject the external camera to replace the internal camera session. ICameraInjectionSession injectCamera(String packageName, String internalCamId, String externalCamId, in ICameraInjectionCallback CameraInjectionCallback); ICameraInjectionSession injectCamera(@utf8InCpp String packageName, @utf8InCpp String internalCamId, @utf8InCpp String externalCamId, in ICameraInjectionCallback CameraInjectionCallback); void setTorchMode(String cameraId, boolean enabled, IBinder clientBinder); void setTorchMode(@utf8InCpp String cameraId, boolean enabled, IBinder clientBinder); // Change the brightness level of the flash unit associated with cameraId to strengthLevel. // If the torch is in OFF state and strengthLevel > 0 then the torch will also be turned ON. void turnOnTorchWithStrengthLevel(String cameraId, int strengthLevel, IBinder clientBinder); void turnOnTorchWithStrengthLevel(@utf8InCpp String cameraId, int strengthLevel, IBinder clientBinder); // Get the brightness level of the flash unit associated with cameraId. int getTorchStrengthLevel(String cameraId); int getTorchStrengthLevel(@utf8InCpp String cameraId); /** * Notify the camera service of a system event. Should only be called from system_server. Loading Loading @@ -233,7 +233,7 @@ interface ICameraService * * @return the key that must be used to report updates to previously reported stats. */ String reportExtensionSessionStats(in CameraExtensionSessionStats stats); @utf8InCpp String reportExtensionSessionStats(in CameraExtensionSessionStats stats); // Bitfield constants for notifyDeviceStateChange // All bits >= 32 are for custom vendor states Loading Loading
camera/Camera.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ #define LOG_TAG "Camera" #include <utils/Log.h> #include <utils/threads.h> #include <utils/String16.h> #include <binder/IPCThreadState.h> #include <binder/IServiceManager.h> #include <binder/IMemory.h> Loading Loading @@ -70,7 +69,7 @@ Camera::~Camera() // deadlock if we call any method of ICamera here. } sp<Camera> Camera::connect(int cameraId, const String16& clientPackageName, sp<Camera> Camera::connect(int cameraId, const std::string& clientPackageName, int clientUid, int clientPid, int targetSdkVersion, bool overrideToPortrait, bool forceSlowJpegMode) { Loading
camera/CameraBase.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ #include <camera/CameraBase.h> #include <camera/CameraUtils.h> #include <camera/StringUtils.h> // needed to instantiate #include <camera/Camera.h> Loading Loading @@ -58,7 +59,7 @@ status_t CameraInfo::readFromParcel(const android::Parcel* parcel) { } status_t CameraStatus::writeToParcel(android::Parcel* parcel) const { auto res = parcel->writeString16(String16(cameraId)); auto res = parcel->writeString16(toString16(cameraId)); if (res != OK) return res; res = parcel->writeInt32(status); Loading @@ -66,12 +67,12 @@ status_t CameraStatus::writeToParcel(android::Parcel* parcel) const { std::vector<String16> unavailablePhysicalIds16; for (auto& id8 : unavailablePhysicalIds) { unavailablePhysicalIds16.push_back(String16(id8)); unavailablePhysicalIds16.push_back(toString16(id8)); } res = parcel->writeString16Vector(unavailablePhysicalIds16); if (res != OK) return res; res = parcel->writeString16(String16(clientPackage)); res = parcel->writeString16(toString16(clientPackage)); return res; } Loading @@ -79,7 +80,7 @@ status_t CameraStatus::readFromParcel(const android::Parcel* parcel) { String16 tempCameraId; auto res = parcel->readString16(&tempCameraId); if (res != OK) return res; cameraId = String8(tempCameraId); cameraId = toString8(tempCameraId); res = parcel->readInt32(&status); if (res != OK) return res; Loading @@ -88,13 +89,13 @@ status_t CameraStatus::readFromParcel(const android::Parcel* parcel) { res = parcel->readString16Vector(&unavailablePhysicalIds16); if (res != OK) return res; for (auto& id16 : unavailablePhysicalIds16) { unavailablePhysicalIds.push_back(String8(id16)); unavailablePhysicalIds.push_back(toStdString(id16)); } String16 tempClientPackage; res = parcel->readString16(&tempClientPackage); if (res != OK) return res; clientPackage = String8(tempClientPackage); clientPackage = toStdString(tempClientPackage); return res; } Loading Loading @@ -140,7 +141,7 @@ const sp<::android::hardware::ICameraService> CameraBase<TCam, TCamTraits>::getC sp<IServiceManager> sm = defaultServiceManager(); sp<IBinder> binder; binder = sm->waitForService(String16(kCameraServiceName)); binder = sm->waitForService(toString16(kCameraServiceName)); if (binder == nullptr) { return nullptr; } Loading @@ -156,7 +157,7 @@ const sp<::android::hardware::ICameraService> CameraBase<TCam, TCamTraits>::getC template <typename TCam, typename TCamTraits> sp<TCam> CameraBase<TCam, TCamTraits>::connect(int cameraId, const String16& clientPackageName, const std::string& clientPackageName, int clientUid, int clientPid, int targetSdkVersion, bool overrideToPortrait, bool forceSlowJpegMode) { Loading
camera/CameraSessionStats.cpp +9 −8 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <utils/String16.h> #include <camera/CameraSessionStats.h> #include <camera/StringUtils.h> #include <binder/Parcel.h> Loading Loading @@ -282,8 +283,8 @@ CameraSessionStats::CameraSessionStats() : mSessionIndex(0), mCameraExtensionSessionStats() {} CameraSessionStats::CameraSessionStats(const String16& cameraId, int facing, int newCameraState, const String16& clientName, CameraSessionStats::CameraSessionStats(const std::string& cameraId, int facing, int newCameraState, const std::string& clientName, int apiLevel, bool isNdk, int32_t latencyMs, int64_t logId) : mCameraId(cameraId), mFacing(facing), Loading Loading @@ -425,10 +426,10 @@ status_t CameraSessionStats::readFromParcel(const android::Parcel* parcel) { return err; } mCameraId = id; mCameraId = toStdString(id); mFacing = facing; mNewCameraState = newCameraState; mClientName = clientName; mClientName = toStdString(clientName); mApiLevel = apiLevel; mIsNdk = isNdk; mLatencyMs = latencyMs; Loading @@ -440,7 +441,7 @@ status_t CameraSessionStats::readFromParcel(const android::Parcel* parcel) { mResultErrorCount = resultErrorCount; mDeviceError = deviceError; mStreamStats = std::move(streamStats); mUserTag = userTag; mUserTag = toStdString(userTag); mVideoStabilizationMode = videoStabilizationMode; mSessionIndex = sessionIdx; mCameraExtensionSessionStats = extStats; Loading @@ -456,7 +457,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { status_t err = OK; if ((err = parcel->writeString16(mCameraId)) != OK) { if ((err = parcel->writeString16(toString16(mCameraId))) != OK) { ALOGE("%s: Failed to write camera id!", __FUNCTION__); return err; } Loading @@ -471,7 +472,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { return err; } if ((err = parcel->writeString16(mClientName)) != OK) { if ((err = parcel->writeString16(toString16(mClientName))) != OK) { ALOGE("%s: Failed to write client name!", __FUNCTION__); return err; } Loading Loading @@ -531,7 +532,7 @@ status_t CameraSessionStats::writeToParcel(android::Parcel* parcel) const { return err; } if ((err = parcel->writeString16(mUserTag)) != OK) { if ((err = parcel->writeString16(toString16(mUserTag))) != OK) { ALOGE("%s: Failed to write user tag!", __FUNCTION__); return err; } Loading
camera/CaptureResult.cpp +11 −7 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <utils/Log.h> #include <camera/CaptureResult.h> #include <camera/StringUtils.h> #include <binder/Parcel.h> namespace android { Loading Loading @@ -47,7 +48,7 @@ status_t CaptureResultExtras::readFromParcel(const android::Parcel *parcel) { ALOGE("%s: Failed to read camera id: %d", __FUNCTION__, res); return res; } errorPhysicalCameraId = cameraId; errorPhysicalCameraId = toStdString(cameraId); } parcel->readInt64(&lastCompletedRegularFrameNumber); parcel->readInt64(&lastCompletedReprocessFrameNumber); Loading Loading @@ -75,7 +76,7 @@ status_t CaptureResultExtras::writeToParcel(android::Parcel *parcel) const { if (errorPhysicalCameraId.size() > 0) { parcel->writeBool(true); status_t res = OK; if ((res = parcel->writeString16(errorPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(errorPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; } Loading @@ -96,13 +97,15 @@ status_t CaptureResultExtras::writeToParcel(android::Parcel *parcel) const { status_t PhysicalCaptureResultInfo::readFromParcel(const android::Parcel* parcel) { status_t res; mPhysicalCameraId.setTo(u""); mPhysicalCameraId = ""; mPhysicalCameraMetadata.clear(); if ((res = parcel->readString16(&mPhysicalCameraId)) != OK) { String16 physicalCameraId; if ((res = parcel->readString16(&physicalCameraId)) != OK) { ALOGE("%s: Failed to read camera id: %d", __FUNCTION__, res); return res; } mPhysicalCameraId = toStdString(physicalCameraId); if ((res = mPhysicalCameraMetadata.readFromParcel(parcel)) != OK) { ALOGE("%s: Failed to read metadata from parcel: %d", __FUNCTION__, res); Loading @@ -113,7 +116,7 @@ status_t PhysicalCaptureResultInfo::readFromParcel(const android::Parcel* parcel status_t PhysicalCaptureResultInfo::writeToParcel(android::Parcel* parcel) const { status_t res; if ((res = parcel->writeString16(mPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(mPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; Loading Loading @@ -187,7 +190,8 @@ status_t CaptureResult::readFromParcel(android::Parcel *parcel) { return res; } mPhysicalMetadatas.emplace(mPhysicalMetadatas.end(), cameraId, physicalMetadata); mPhysicalMetadatas.emplace(mPhysicalMetadatas.end(), toStdString(cameraId), physicalMetadata); } ALOGV("%s: Read physical metadata from parcel", __FUNCTION__); Loading Loading @@ -228,7 +232,7 @@ status_t CaptureResult::writeToParcel(android::Parcel *parcel) const { return BAD_VALUE; } for (const auto& physicalMetadata : mPhysicalMetadatas) { if ((res = parcel->writeString16(physicalMetadata.mPhysicalCameraId)) != OK) { if ((res = parcel->writeString16(toString16(physicalMetadata.mPhysicalCameraId))) != OK) { ALOGE("%s: Failed to write physical camera ID to parcel: %d", __FUNCTION__, res); return res; Loading
camera/aidl/android/hardware/ICameraService.aidl +14 −14 Original line number Diff line number Diff line Loading @@ -82,7 +82,7 @@ interface ICameraService */ ICamera connect(ICameraClient client, int cameraId, String opPackageName, @utf8InCpp String opPackageName, int clientUid, int clientPid, int targetSdkVersion, boolean overrideToPortrait, Loading @@ -93,9 +93,9 @@ interface ICameraService * Only supported for device HAL versions >= 3.2 */ ICameraDeviceUser connectDevice(ICameraDeviceCallbacks callbacks, String cameraId, String opPackageName, @nullable String featureId, @utf8InCpp String cameraId, @utf8InCpp String opPackageName, @nullable @utf8InCpp String featureId, int clientUid, int oomScoreOffset, int targetSdkVersion, boolean overrideToPortrait); Loading Loading @@ -139,7 +139,7 @@ interface ICameraService * Read the static camera metadata for a camera device. * Only supported for device HAL versions >= 3.2 */ CameraMetadataNative getCameraCharacteristics(String cameraId, int targetSdkVersion, CameraMetadataNative getCameraCharacteristics(@utf8InCpp String cameraId, int targetSdkVersion, boolean overrideToPortrait); /** Loading @@ -160,7 +160,7 @@ interface ICameraService /** * Read the legacy camera1 parameters into a String */ String getLegacyParameters(int cameraId); @utf8InCpp String getLegacyParameters(int cameraId); /** * apiVersion constants for supportsCameraApi Loading @@ -169,21 +169,21 @@ interface ICameraService const int API_VERSION_2 = 2; // Determines if a particular API version is supported directly for a cameraId. boolean supportsCameraApi(String cameraId, int apiVersion); boolean supportsCameraApi(@utf8InCpp String cameraId, int apiVersion); // Determines if a cameraId is a hidden physical camera of a logical multi-camera. boolean isHiddenPhysicalCamera(String cameraId); boolean isHiddenPhysicalCamera(@utf8InCpp String cameraId); // Inject the external camera to replace the internal camera session. ICameraInjectionSession injectCamera(String packageName, String internalCamId, String externalCamId, in ICameraInjectionCallback CameraInjectionCallback); ICameraInjectionSession injectCamera(@utf8InCpp String packageName, @utf8InCpp String internalCamId, @utf8InCpp String externalCamId, in ICameraInjectionCallback CameraInjectionCallback); void setTorchMode(String cameraId, boolean enabled, IBinder clientBinder); void setTorchMode(@utf8InCpp String cameraId, boolean enabled, IBinder clientBinder); // Change the brightness level of the flash unit associated with cameraId to strengthLevel. // If the torch is in OFF state and strengthLevel > 0 then the torch will also be turned ON. void turnOnTorchWithStrengthLevel(String cameraId, int strengthLevel, IBinder clientBinder); void turnOnTorchWithStrengthLevel(@utf8InCpp String cameraId, int strengthLevel, IBinder clientBinder); // Get the brightness level of the flash unit associated with cameraId. int getTorchStrengthLevel(String cameraId); int getTorchStrengthLevel(@utf8InCpp String cameraId); /** * Notify the camera service of a system event. Should only be called from system_server. Loading Loading @@ -233,7 +233,7 @@ interface ICameraService * * @return the key that must be used to report updates to previously reported stats. */ String reportExtensionSessionStats(in CameraExtensionSessionStats stats); @utf8InCpp String reportExtensionSessionStats(in CameraExtensionSessionStats stats); // Bitfield constants for notifyDeviceStateChange // All bits >= 32 are for custom vendor states Loading