2010-12-02 84 views
0

现在已经有一段时间了,因为我开始阅读关于android。 我已经做了一些基本的应用程序,但我仍然错过了一些东西:实际上如何共享应用程序组件? 这是Android开发人员是怎么说的:如何在android中共享应用程序组件?

的Android的核心特征是一个应用程序可以使用其他应用程序的元素(所提供的应用程序允许它)。例如,如果您的应用程序需要显示滚动的图像列表,而另一个应用程序已开发出合适的滚动条并将其提供给其他应用程序,则可以调用该滚动条来完成这项工作,而不是自行开发。您的应用程序不包含其他应用程序的代码或链接到它的代码。相反,它只是在需要时启动另一个应用程序的那一部分。

我想我遇到过这样的问题,但我觉得我还是很困惑。 获得这样的“私人应用”信息以联系该应用程序的开发人员的唯一方法是?

有关应用程序与私有操作的数据的信息吗? 如果在AndroidManifest.xml文件中描述它是否可用于其他应用程序,或者它仅适用于Android?

当我开始我的满足Android中的兴趣 - 那抓住我是巨大的互操作性的印象的一件事...

:)

难道我错了或者我还没有找到方式?

谢谢!

回答

1

实际上如何共享应用程序组件?

这完全取决于您认为“应用程序组件”是什么以及您认为“共享”是什么。

这就是Android开发指南说

这是一个相当坏块的文件。下面是我如何编写它:

Android的一个中心特点是,一个应用程序可以利用其他应用程序(如应用程序允许)的组件(例如,活动,服务)。例如,如果您的应用程序需要显示联系人列表,而另一个应用程序开发了一个可以实现这一目标并使其他应用程序可用的活动,则可以调用该活动来完成这项工作,而不是自行开发。您的应用程序不包含其他应用程序的代码。相反,它只是在需要时启动另一个应用程序的那一部分。

获得这样的“私人应用”信息与该应用程序的开发人员联系的唯一方法是什么?

无论是开发人员都打算让你与他们进行整合,或者他们不是。如果他们是,他们应该记录如何做到这一点(例如,,Intent格式与startActivity()一起使用以触发其代码)。如果他们没有记录这样的整合点,你当然可以要求开发者添加一些。然而,随机拍摄Intents希望能够得到回应,即使它暂时有效,也不会比脚本小子的策略更好 - 那些开发人员在升级应用程序时没有义务确保您的代码能够正常工作。

有关应用程序使用私人数据的信息吗?

我不知道什么“应用程序的数据操作信息”意味着什么。由应用程序管理的数据默认是私有的。同样,应用程序开发人员可以为数据提供集成点(例如,内容提供者,远程服务API) - 有些可以,有些则不可以。

的是抓住我的事情之一是巨大的互操作性的印象

Android提供了比其他移动平台的互操作性潜力。但是,使用这种潜力需要互操作人员之间的同意。你不能单方面决定侵入另一个应用程序的数据库,或者仅仅因为你喜欢它而调用私人活动。

更多的Android开发者应该提供更多的集成点吗?在抽象中,当然。但是,请记住,这会增加支持成本(例如,回答集成问题)并限制编码灵活性(例如,需要为执行集成的人员维护稳定的API)。如果开发商不希望招致所有这些,开发商不能受到指责。

+0

感谢您的详尽答案!通过'关于应用程序数据的信息''我想说的是应用程序使用的数据类型 - 我不想破解任何人的应用程序!这些数据类型在清单文件中描述。像这样: 换句话说,我可以从我自己的应用程序,该app_other可以播放视频? – karla 2010-12-02 19:03:47