Question

I am using following adb command to open camera app in video recording mode directly:

adb shell am start -a android.media.action.VIDEO_CAPTURE -n  com.android.gallery3d/com.android.camera.CameraActivity

It has been all working fine until lately the comand started failing on KitKat:

C:\Users\asiaynrf>adb shell am start -a android.media.action.VIDEO_CAPTURE -n  com.android.gallery3d/com.android.camera.CameraActivity
Starting: Intent { act=android.media.action.VIDEO_CAPTURE cmp=com.android.gallery3d/com.android.camera.CameraActivity }
java.lang.SecurityException: Permission Denial: starting Intent { act=android.media.action.VIDEO_CAPTURE flg=0x10000000 cmp=com.android.gallery3d/com.android.
camera.CameraActivity } from null (pid=2485, uid=2000) not exported from uid 10038
        at android.os.Parcel.readException(Parcel.java:1465)
        at android.os.Parcel.readException(Parcel.java:1419)
        at android.app.ActivityManagerProxy.startActivityAsUser(ActivityManagerNative.java:2141)
        at com.android.commands.am.Am.runStart(Am.java:680)
        at com.android.commands.am.Am.onRun(Am.java:270)
        at com.android.internal.os.BaseCommand.run(BaseCommand.java:47)
        at com.android.commands.am.Am.main(Am.java:76)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:243)
        at dalvik.system.NativeStart.main(Native Method)

I have no idea why it started failing and why Gallery 3D does not have permissions to this app. Any idea?

Was it helpful?

Solution

That activity is not exported and is no longer accessible from outside of the app itself. Only the app can start up that activity.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top