【发布时间】:2011-11-16 03:50:14
【问题描述】:
如何从 adb shell 运行安卓相机程序?
我知道我应该使用 am 但我不知道我应该准确输入什么命令
我用过这个:
am start -a android.intent.action.MAIN -n com.android.camera
但它没有用!
【问题讨论】:
如何从 adb shell 运行安卓相机程序?
我知道我应该使用 am 但我不知道我应该准确输入什么命令
我用过这个:
am start -a android.intent.action.MAIN -n com.android.camera
但它没有用!
【问题讨论】:
或者,您可以通过其他 2 种方式启动相机
adb shell "am start -a android.media.action.IMAGE_CAPTURE"
adb shell "am start -a android.media.action.VIDEO_CAPTURE"
其他信息
adb shell "input keyevent KEYCODE_FOCUS"
adb shell "input keyevent KEYCODE_CAMERA"
其他说明
如果键码字符串(例如 KEYCODE_CAMERA)不起作用,请从 API 描述中查找常量值。示例:KEYCODE_CAMERA
KEYCODE_CAMERA: Added in API level 1
Constant Value: 27 (0x0000001b)
【讨论】:
input keyevent 27 是相机按钮。
CameraActivity 类。AndroidManifest.xml 文件中。然后使用以下命令:
am start -a android.intent.action.MAIN -n [package-name].CameraActivity
希望这能解决你的问题。
【讨论】:
我想补充 Keo Malope 的回答,虽然 IMAGE_CAPTURE 和 VIDEO_CAPTURE 可能适用于大多数设备,但我遇到过它们无法按预期工作的情况。在这种情况下,我们可以尝试另外两个常量:
adb shell am start -a android.media.action.STILL_IMAGE_CAMERAadb shell am start -a android.media.action.VIDEO_CAMERA【讨论】:
您需要指定确切的组件名称(活动名称)。
am start -a android.intent.action.MAIN -n com.android.camera/.CameraEntry
它在我的设备 (HTC Desire HD) 上运行,但我不能保证它可以在任何地方运行。
【讨论】:
这里适合我
adb shell am start -n com.mediatek.camera/com.android.camera.CameraActivity
【讨论】: