【问题标题】:Data Sharing Between Two Android Applications两个 Android 应用程序之间的数据共享
【发布时间】:2013-03-30 19:13:52
【问题描述】:

我一直在研究如何在两个应用程序之间共享数据。这是我想要完成的事情。我有一个 ocr 应用程序和一个 XMPP 应用程序。 XMPP 应用程序已连接到 openfire 服务器,并成功从 android 手机发送消息到我笔记本电脑上的 spark 客户端信使。现在我想做的是通过ocr应用程序中的相机拍照,然后将其转换为存储在字符串中的文本。现在我想将该字符串提供给我手机上的 XMPP 客户端应用程序,以便它可以将该文本发送到我笔记本电脑上的 spark 客户端信使。我已经成功地在这里解释了我的情况。我尝试使用套接字编程来做到这一点,但失败了。然后我看到有人说可以通过 sharedpreferences 对象来做到这一点,但是 xmpp 应用程序如何知道现在 ocr 应用程序已经转换了文本并且我应该接收它是没有意义的。请帮我解决这个问题。解释和一些代码将不胜感激!

【问题讨论】:

    标签: android data-sharing


    【解决方案1】:

    【讨论】:

      【解决方案2】:

      您的问题是:如何将数据从运行手机的 ocr 应用程序发送到运行在同一部手机中的 xmpp 应用程序。

      基本上,您正在寻找关于两个应用程序(进程)如何通信的解决方案。

      解决方案:

      先决条件1:同意广播ocr和xmpp应用程序的ACTION。

      先决条件2:在您的 ocr 应用中创建一个数据库表来存储您的文本。

      先决条件3:在您的数据库之上创建一个内容提供者

      现在,一旦在您的 ocr 应用程序中,您拍摄了一些照片, 将该相机转换的文本数据放入您的数据库表中。 发送带有上述 ACTION 的广播,以便 XMPP 应用程序了解您的数据已准备好。发送此广播时,请发送您在其中放置要共享的文本的表的 URI。

      另一方面,一旦 xmpp 应用在其接收器中接收到广播, 基于URI,通过内容解析器从ocr app的表中查询和获取数据。

      注意:您可以直接将您的相机图片存储在sd卡中,并且可以将该图片的路径放入您的数据库表中。而不是把图片转成文字格式。

      这只是我对如何做到这一点的随机想法。也许你可以得到比这更好的技术。

      您可以研究的其他想法是:

      1. 在两个应用程序之间放置一个公共共享内存。将共享数据放入该内存区域并访问它。 (比如活页夹如何在内部工作)

      2. 为 ocr 和 xmpp 应用程序提供相同的用户 id,以便 xmpp 可以直接访问 ocr 应用程序的数据库表的数据。如果两个应用程序具有相同的 linux 用户 ID,则两者都可以共享共享的首选项文件或数据库文件。

      希望对你有帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-04-03
        • 1970-01-01
        • 2012-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多