好吧,情况是这样的:
我正在为客户开发一个应用程序(或尝试这样做)。它需要许多(如果不是全部)与内置 SMS/MMS 应用程序相同的功能。所以,我想 - 嘿! Android 是开源的吗?我可以接受应用程序并根据我的需要进行修改,对吧?
因此,我在 github 上找到了 MMS/SMS 应用程序的代码(出于某种原因,基于 AndroidManifest 文件,它调用我构建的项目“ConversationList”)。但我收到了大量涉及 import com.google.android.mms.* 包和其他几个包的错误。
每个人都一直说“这是一个私有/内部包”,以及“下载整个 AOSP”。但是,我如何在 Windows 上执行此操作,为什么我不能下载适当的包以在程序中使用?
我想做的就是在 Eclipse 中构建一个项目,将其部署到我的手机上,然后修改必要的代码。如果 Android 是开源的,为什么会有这么多秘密/内部包?这令人沮丧。
有什么建议吗?
因此,我在 github 上找到了 MMS/SMS 应用程序的代码(出于某种原因,基于 AndroidManifest 文件,它调用我构建的项目“ConversationList”)。但我收到了大量涉及 import com.google.android.mms.* 包和其他几个包的错误。
像这样的 AOSP 应用程序设计为作为固件映像的一部分构建,而不是作为独立应用程序。
但是,我该如何在 Windows 上执行此操作
最有可能的是,你不知道。 Cygwin 可能会工作。更有可能的是,您需要使用 OS X 或 Linux,例如在 VirtualBox 中运行 Linux。并且您的构建结果不会在任何东西上运行,除非作为用于替换设备上固件的固件构建的一部分。
为什么我不能直接下载适当的软件包以在程序中使用?
因为该应用程序被设计为构建为固件映像的一部分,而不是作为独立应用程序。
我想做的就是在 Eclipse 中构建一个项目,将其部署到我的手机上,然后修改必要的代码。
然后找到一个旨在构建为独立应用程序的项目作为起点。或者,通过删除所有依赖于应用程序本身之外的内容的功能,来修改您尝试用作独立应用程序的项目。
如果 Android 是开源的,为什么会有这么多秘密/内部包?
它们不是“秘密”。它们是固件的一部分。
例如 - 由于您似乎熟悉 Windows - 像控制面板这样的“应用程序”完全有可能不是设计为独立于 Windows 操作系统构建的。如果您能够将源代码下载到 Windows 并尝试将控制面板加载到 Visual Studio 中,则很可能您无法创建一些独立的CPANEL.EXE
仅通过该一个项目来文件。相反,您需要使用自定义的 Windows 操作系统构建过程来构建整个操作系统,然后该操作系统将包含CPANEL.EXE
它将在操作系统的构建版本中运行。
大多数 AOSP 应用程序都是这样工作的。有些已经被分叉来创建独立的应用程序——K-9 Mail 来自 AOSP 电子邮件应用程序的早期版本。我不知道是否有人使用 AOSP Messaging 应用程序完成了此操作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)