如何从 adb shell 运行 Android 相机应用程序?

发布于 2024-12-04 11:25:59 字数 188 浏览 1 评论 0原文

如何从 adb shell 运行 Android 相机程序?
我知道我应该使用 am 但我不知道我应该输入什么命令

我使用了这个:

am start -a android.intent.action.MAIN -n com.android.camera 

但它不起作用!

How can I run android camera program from adb shell?
I know that I should use am but I do not know what command should I exactly enter

I used this:

am start -a android.intent.action.MAIN -n com.android.camera 

But it didn't work!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

从﹋此江山别 2024-12-11 11:25:59

或者,您可以通过其他 2 种方式启动相机

  1. 图像捕获模式:adb shell "am start -a android.media.action.IMAGE_CAPTURE"
  2. 视频捕获模式:adb shell "am start - a android.media.action.VIDEO_CAPTURE"

其他信息

  1. 要聚焦:adb shell "input keyevent KEYCODE_FOCUS"
  2. 要拍照或开始/停止录制: adb shell "input keyevent KEYCODE_CAMERA"

其他注意事项

如果键码字符串如 KEYCODE_CAMERA 不起作用,请从 API 描述中查找常量值。示例: KEYCODE_CAMERA

KEYCODE_CAMERA: Added in API level 1
Constant Value: 27 (0x0000001b)

Alternatively, you can start the camera in 2 other ways

  1. Image capture mode: adb shell "am start -a android.media.action.IMAGE_CAPTURE"
  2. Video capture mode: adb shell "am start -a android.media.action.VIDEO_CAPTURE"

Other information

  1. To focus: adb shell "input keyevent KEYCODE_FOCUS"
  2. To take a photo or start/stop recording: adb shell "input keyevent KEYCODE_CAMERA"

Other notes

f the keycode string e.g KEYCODE_CAMERA, does not work, lookup the constant value from the API description. Example: KEYCODE_CAMERA

KEYCODE_CAMERA: Added in API level 1
Constant Value: 27 (0x0000001b)
捶死心动 2024-12-11 11:25:59

我想补充一下 Keo Malope 的答案,虽然 IMAGE_CAPTURE 和 < a href="https://developer.android.com/reference/android/provider/MediaStore#ACTION_VIDEO_CAPTURE" rel="noreferrer">VIDEO_CAPTURE 很可能为了在大多数设备上工作,我遇到过它们无法按预期工作的情况。在这种情况下,我们还有两个常量可以尝试:

I'd like to add to Keo Malope's answer that while IMAGE_CAPTURE and VIDEO_CAPTURE are likely to work on most devices, I have encountered cases where they don't work as expected. In this case, we have two more constants that we can try:

云巢 2024-12-11 11:25:59
  • 创建一个CameraActivity 类。
  • 在那里实现相机功能并添加到 AndroidManifest.xml 文件中。
  • 然后使用以下命令:

    am start -a android.intent.action.MAIN -n [package-name].CameraActivity 
    

我希望这能解决您的问题。

  • Create a CameraActivity class.
  • Implement camera functionality there and add to AndroidManifest.xml file.
  • Then use following command:

    am start -a android.intent.action.MAIN -n [package-name].CameraActivity 
    

I hope this will solve your problem.

翻身的咸鱼 2024-12-11 11:25:59

您需要指定确切的组件名称(活动名称)。

am start -a android.intent.action.MAIN -n com.android.camera/.CameraEntry

它正在我的设备(HTC Desire HD)上运行,但我不能保证它在任何地方都能工作。

You need to specify exact component name (name of activity).

am start -a android.intent.action.MAIN -n com.android.camera/.CameraEntry

It is working on my device (HTC Desire HD), but I can't guarantee that it'll work everywhere.

人│生佛魔见 2024-12-11 11:25:59

这对我有用

adb shell am start -n com.mediatek.camera/com.android.camera.CameraActivity

it works for me here

adb shell am start -n com.mediatek.camera/com.android.camera.CameraActivity
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文