java.lang.SecurityException:方法 class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] 不可用
java.lang.SecurityException: Method class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] not available
调用 Camera.open(cameraIndex)(相机 1 API)时出现以下错误
MethodInvocationProxy:调用方法时出现异常 public 抽象布尔值 android.media.IAudioService.isCameraSoundForced() 抛出 android.os.RemoteException
java.lang.SecurityException:方法 class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] 不适用于免安装应用程序
06-18 10:23:43.361 26240-26359/? E/Isotope: UID: [10185] PID: [26240]
MethodInvocationStub : Exception while calling method
isCameraSoundForced
java.lang.SecurityException: Method class
android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] not
available to instant apps
at com.google.android.instantapps.supervisor.ipc.proxies.SandboxEnforcer.enforceUnsupportedPolicy(PG:63)
at com.google.android.instantapps.supervisor.ipc.proxies.SandboxEnforcer.enforceUnsupportedMethodPolicy(PG:17)
at com.google.android.instantapps.supervisor.ipc.ProxyMethodHandler.handleMethod(PG:50)
at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationStub.onTransact(PG:56)
at android.os.Binder.execTransact(Binder.java:453) 06-18 10:23:43.361
26274-26274/? E/Isotope: UID: [99000] PID: [26274]
MethodInvocationProxy : Exception while calling method public abstract
boolean android.media.IAudioService.isCameraSoundForced() throws
android.os.RemoteException
java.lang.SecurityException: Method class
android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] not
available to instant apps
at android.os.Parcel.readException(Parcel.java:1620)
at android.os.Parcel.readException(Parcel.java:1573)
at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationProxy.readReply(PG:39)
at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationProxy.invoke(PG:130)
at java.lang.reflect.Proxy.invoke(Proxy.java:393)
at $Proxy5.isCameraSoundForced(Unknown Source)
at android.hardware.Camera.getCameraInfo(Camera.java:260)
at com.chegg.feature.wizard.camera.CameraActivity.getBackFacingCamera(CameraActivity.java:357)
at com.chegg.feature.wizard.camera.CameraActivity.startCamera(CameraActivity.java:101)
at com.chegg.feature.wizard.camera.CameraActivity.startCameraSafely(CameraActivity.java:79)
at com.chegg.feature.wizard.camera.CameraActivity.onResume(CameraActivity.java:74)
at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1286)
at android.app.Activity.performResume(Activity.java:6987)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4144)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4245)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3360)
at android.app.ActivityThread.access00(ActivityThread.java:221)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:158)
at android.app.ActivityThread.main(ActivityThread.java:7224)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
免安装应用功能受限,显然不支持该方法。您可以使用 InstantApps.isInstantApp()
方法来确定它是已安装还是免安装应用程序,并仅在已安装时调用 isCameraSoundForced
。
更多信息:https://developer.android.com/topic/instant-apps/reference.html
android.hardware.Camera 在 API 级别 21 中被弃用,而即时应用仅支持 API 级别 23 的设备。您需要使用 android.hardware.camera2 代替。
https://developer.android.com/reference/android/hardware/camera2/package-summary.html
The android.hardware.camera2 package provides an interface to
individual camera devices connected to an Android device. It replaces
the deprecated Camera class.
此问题已在 https://issuetracker.google.com/issues/38485484 中解决
其中工程师提供了以下信息:
"Instant apps don't support the old deprecated android.hardware.Camera. They only support the camera2 APIs"
免安装应用 运行 在 Android O 和以前的版本上,它们使用 google 播放服务 运行。因此,API 26 之前的免安装应用不支持摄像头 1,因为它们本身不支持 运行。但是,您可以在 API 26 上的即时应用程序中使用相机 1 api,直到我想象的相机 1 api 还活着。
但是,我在免安装应用中使用相机 2 api,在安装的应用中使用相机 1 api。
这是 Google 免安装应用的 Play 服务支持的当前实现中的一个错误。
它将在未来的版本中修复,届时 android.hardware.Camera API 应该可以正常运行。
遗憾的是,我没有关于修复可用时间范围的任何具体信息。
调用 Camera.open(cameraIndex)(相机 1 API)时出现以下错误
MethodInvocationProxy:调用方法时出现异常 public 抽象布尔值 android.media.IAudioService.isCameraSoundForced() 抛出 android.os.RemoteException java.lang.SecurityException:方法 class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] 不适用于免安装应用程序
06-18 10:23:43.361 26240-26359/? E/Isotope: UID: [10185] PID: [26240] MethodInvocationStub : Exception while calling method isCameraSoundForced java.lang.SecurityException: Method class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] not available to instant apps at com.google.android.instantapps.supervisor.ipc.proxies.SandboxEnforcer.enforceUnsupportedPolicy(PG:63) at com.google.android.instantapps.supervisor.ipc.proxies.SandboxEnforcer.enforceUnsupportedMethodPolicy(PG:17) at com.google.android.instantapps.supervisor.ipc.ProxyMethodHandler.handleMethod(PG:50) at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationStub.onTransact(PG:56) at android.os.Binder.execTransact(Binder.java:453) 06-18 10:23:43.361 26274-26274/? E/Isotope: UID: [99000] PID: [26274] MethodInvocationProxy : Exception while calling method public abstract boolean android.media.IAudioService.isCameraSoundForced() throws android.os.RemoteException java.lang.SecurityException: Method class android.media.IAudioService$Stub$Proxy.isCameraSoundForced[] not available to instant apps at android.os.Parcel.readException(Parcel.java:1620) at android.os.Parcel.readException(Parcel.java:1573) at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationProxy.readReply(PG:39) at com.google.android.instantapps.supervisor.ipc.base.MethodInvocationProxy.invoke(PG:130) at java.lang.reflect.Proxy.invoke(Proxy.java:393) at $Proxy5.isCameraSoundForced(Unknown Source) at android.hardware.Camera.getCameraInfo(Camera.java:260) at com.chegg.feature.wizard.camera.CameraActivity.getBackFacingCamera(CameraActivity.java:357) at com.chegg.feature.wizard.camera.CameraActivity.startCamera(CameraActivity.java:101) at com.chegg.feature.wizard.camera.CameraActivity.startCameraSafely(CameraActivity.java:79) at com.chegg.feature.wizard.camera.CameraActivity.onResume(CameraActivity.java:74) at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1286) at android.app.Activity.performResume(Activity.java:6987) at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4144) at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4245) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3360) at android.app.ActivityThread.access00(ActivityThread.java:221) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1794) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:158) at android.app.ActivityThread.main(ActivityThread.java:7224) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
免安装应用功能受限,显然不支持该方法。您可以使用 InstantApps.isInstantApp()
方法来确定它是已安装还是免安装应用程序,并仅在已安装时调用 isCameraSoundForced
。
更多信息:https://developer.android.com/topic/instant-apps/reference.html
android.hardware.Camera 在 API 级别 21 中被弃用,而即时应用仅支持 API 级别 23 的设备。您需要使用 android.hardware.camera2 代替。
https://developer.android.com/reference/android/hardware/camera2/package-summary.html
The android.hardware.camera2 package provides an interface to individual camera devices connected to an Android device. It replaces the deprecated Camera class.
此问题已在 https://issuetracker.google.com/issues/38485484 中解决 其中工程师提供了以下信息:
"Instant apps don't support the old deprecated android.hardware.Camera. They only support the camera2 APIs"
免安装应用 运行 在 Android O 和以前的版本上,它们使用 google 播放服务 运行。因此,API 26 之前的免安装应用不支持摄像头 1,因为它们本身不支持 运行。但是,您可以在 API 26 上的即时应用程序中使用相机 1 api,直到我想象的相机 1 api 还活着。
但是,我在免安装应用中使用相机 2 api,在安装的应用中使用相机 1 api。
这是 Google 免安装应用的 Play 服务支持的当前实现中的一个错误。
它将在未来的版本中修复,届时 android.hardware.Camera API 应该可以正常运行。
遗憾的是,我没有关于修复可用时间范围的任何具体信息。