2011-12-12 44 views
6

我已经从android市场下载了一个应用程序。我只需输入一个数字,然后点击输入,该应用就会生成一个包含一些内容的表格。是否有可能从android中的另一个应用程序获取数据?

我想我的应用程序复制表的内容。我的应用程序调用该应用程序。用户必须手动将数据放入编辑文本中,然后按回车键。直到那时我的应用程序将在后台运行。

  1. 这可能吗?
  2. 如何?

另一个问题: 我可以截取第二个应用程序的屏幕截图,然后使用图像到文本解码器来获取该屏幕上的数据吗?

回答

2

Here是关于应用程序之间的数据存储和数据共享的完整文档。我怀疑你可以共享数据库,但你可以尝试使用相同的方式使用external storage

+0

这个应用程序是不是我的,所以我甚至不知道该数据库的谎言,所有的数据存储。那样的话,我该怎么办? – Pallavi

+0

我想你不能实现其他应用程序的任何私人数据。如果第三方应用程序想共享任何数据 - 它使用文档 – Jin35

0

看来你想传递一些数据到该应用程序并运行它,对吧?这是可能的,当且仅当该应用程序提供一些“钩”才能做到这一点。

在Android中,你可以,无论应用程序是否为您有任何挂钩,通过做这样的事情启动一个应用程序:

Intent intent=new Intent(); 
intent.setPackage(TARGET_APP's package name); 
context.startActivity(intent); 

这应该启动该应用程序,但是,如果它不不会为您提供挂钩,该应用程序将按照正常运行的方式运行。在这种情况下,你的数据不会生效。如果它提供挂钩,您可以通过intent.putExtra("KEy",value)put data然后启动该应用程序。另一方面,如果你想从应用程序读取一些数据,当且仅当该应用程序允许你这样做时才有可能。应用程序生成的数据默认是私有的。

+0

中描述的方法感谢您的回答,我写了代码来启动应用程序,它工作正常,但我需要访问数据。我无法做到这一点。 – Pallavi

+0

如果该应用程序未设计某些第三方应用程序传递数据的机制,则无法这样做。 – Huang

+0

好的。谢谢。但是有没有其他解决方法呢? – Pallavi

1

的Android沙箱单独的应用程序,所以只能通过其公开的服务的其他应用程序进行交互 - 意图和内容提供商。扎根几乎肯定无济于事。

从一个你一无所知的第三方应用程序获取数据可能是不可能的,并且即使可能,也会使屏幕镜头变得杂乱和不可靠。

为什么不联系开发商,并解释你想做的事,看他们是否会提供一个明智的方法可以让你获得他们的应用程序中的数据?

4

有两种方式:

1)目的:如果你想分享少量的应用程序之间的文本或数字数据,就发送一个包含数据的意图。

2)内容提供者:提供从你的应用程序到另一个应用程序的文件是向接收应用程序发送文件的内容URI并授予对该URI的临时访问权限。具有临时URI访问权限的内容URI是安全的,因为它们仅适用于接收URI的应用程序,并且它们会自动过期。

相关问题