26

我正在编写一个相机是必不可少的功能的应用程序。在这方面,我想100%确定以下几个方面:

  1. 如果我使用已弃用的相机:该应用程序现在是否仍可在所有 API 上运行?
  2. 如果 1) 是:在什么时候这个应用程序将不再在所有 API 上运行(我的应用程序应涵盖最低 API 17)?
  3. 我在哪里可以找到有关 2) 的最新官方信息,即计划内容和时间?
  4. 说,我现在已经使用新的 camera2,我的理解是该应用程序不会在低于 21 的任何 API 上运行 - 对吗?
  5. 根据我目前获得的信息,我的工作假设是:现在仍然使用已弃用的相机。但是请继续关注 API 的市场份额并尽快开始学习 camera2,以便在未来 2-3 年内将应用程序切换到 camera2。你同意吗?

无论如何,使用设备的摄像头并使其在几乎所有目标设备上运行都非常棘手(因为现在我很高兴掌握了“旧”摄像头......)。因此,我真的很想确定以上几点。非常感谢您的回答。

4

2 回答 2

37

如果我使用已弃用的相机:该应用程序现在是否仍可在所有 API 上运行?

是的。

什么时候这个应用程序将不再在所有 API 上运行(我的应用程序应涵盖最低 API 17)?

建造一台时间机器,进入未来,找出答案,让我们其他人知道。

IOW,我们无法预测 Google 是否以及何时会完全停止使用该 API。话虽如此,他们几乎从不停止使用 API。

我在哪里可以找到有关 2) 的最新官方信息,即计划内容和时间?

在 Google 找到一份工作,或者选择上述时间机器选项。谷歌没有提前公布计划的习惯,他们的时光机也没有出租。

(尽管 Elon Musk 可能有一辆配备了Mr. Fusion的特斯拉,所以你可以联系他……)

我现在已经使用新的 camera2,我的理解是该应用程序不会在任何低于 21 的 API 上运行 - 对吗?

正确的。

现在仍然使用已弃用的相机。但是请继续关注 API 的市场份额并尽快开始学习 camera2,以便在未来 2-3 年内将应用程序切换到 camera2。你同意吗?

不,原因我会在你的下一次报价后澄清。

使用设备的摄像头并使其在几乎所有目标设备上运行已经够棘手的了

这种棘手的部分原因是设备制造商的相机实现可能被慷慨地描述为“古怪”。

只使用旧相机 API 的问题在于,我预计该 API 的质量控制会稳步下降。设备制造商对相机的有限资源将主要用于新的 API。

因此,我的建议是同时使用这两种 API:camera2尽可能使用并在需要时回退到原始 API。诚然,这需要更多的工作。如果您无法完成这项工作,那么您别无选择,只能坚持使用原始相机 API,直到您准备好minSdkVersion21 岁以上。

于 2015-09-13T13:54:40.250 回答
1

谷歌刚刚发布了 CameraX,一个封装了摄像头和摄像头 2 的 API。这个新的支持 API 试图消除每个制造商为我们的 enyojment 添加的怪癖。

看看:https ://developer.android.com/training/camerax

于 2019-05-16T18:30:21.067 回答