2012-07-30 50 views
0

我一直在寻找,我找不到可以100%澄清我的话题。如何激活android的应用程序首选项(从联系人,消息,...)

我的问题是:如何在自己的应用程序上启动Android的应用程序首选项活动(从Contacts,Messages,...)?

我举一个例子: 想象一下,我正在开发一个应用程序,允许用户快速访问消息的设置。我不需要发送或接收任何信息,我只需要打开活动,为它创建一个快捷方式。

回答

1

在这个线程最好的答案有解决方案: android: how do i open another app from my app?

同时检查: http://android-developers.blogspot.com/2009/01/can-i-use-this-intent.html

要打开设置,您可以尝试: startActivityForResult(新意图(android.provider.Settings.ACTION_SETTINGS ,0));

+0

我认为这并没有解决我的问题。 我看到了你给我的链接和@Tym Kryger说的使用intent并设置了'intent.setDataAndType(path,“application/pdf”);'但是我用Uri的链接搜索了Uri的路径' //developer.android.com/guide/appendix/g-app-intents.html,它只给我浏览器,谷歌地图和拨号器的Uri ... – 2012-07-31 00:03:23

1

有人知道这是否可以完成,甚至打开应用程序的具体位置?

您无需了解这些操作的具体位置或特定应用,只需查看Intent.ACTION_PICK即可。

+0

我不想从应用中挑选某些东西,我想要打开它。其实我想打开它的设置活动。我不需要发送或接收任何信息,我只想打开它。 – 2012-07-30 23:47:31

+0

我更新了我的答案以显示如何打开设置。 – almalkawi 2012-07-30 23:57:24

+0

这不是我想要打开的常规设置,它是消息的设置,浏览器的设置,... 来自特定Android应用的设置。我已阅读了关于打开其他应用程序的设置,并且说我无法做到这一点,但我不确定,它必须是打开其他应用程序活动的一种方式。 *我看到我的问题不是很清楚,我会更新我的问题 – 2012-07-31 00:09:27

1

有在代码编写的明确意图,这将去你的应用的特定活动并使用相同的无差异格式转到某个其他应用的特定活动。需要注意的几件事情:(1)接收活动可能期望特定的数据,否则失败。 (2)制造商可能会更改您正在考虑的标准应用程序,例如Contacts(联系人),Messages(消息),同时您可以在Android开放源代码项目(AOSP)中找到它们的来源,以便活动名称和必要的额外数据可能会有所不同。

为了在所有不同的Android制造商之间保持尽可能多的兼容性,您应该使用适当的操作/数据来坚持标准的隐含意图。

+0

并且可以访问所有平台应用程序?我看到了浏览器应用程序的源代码(https://github.com/android/platform_packages_apps_browser/tree/master/src/com/android/browser),并且我在编码时在eclipse上找不到那些软件包。 还有其他方法可以访问它吗?我是否必须下载并连接到我的项目或类似的东西? – 2012-08-01 21:08:17

+0

Eclipse的SDK插件只会显示那些属于标准Java API的软件包。还有其他方法可以深入,但假设您正在尝试构建自己的ROM /平台。不知道这与您的原始问题有何关系。 – 2012-08-01 22:13:48

+0

我不想要我自己的平台,我只想从android的标准应用程序中打开一些活动并执行它,我需要知道活动的位置。这就是全部 – 2012-08-01 22:26:08

相关问题