2013-03-30 4 views
0

Я занимаюсь исследованием того, как я могу делиться данными между двумя приложениями. Вот что я пытаюсь выполнить. У меня есть приложение ocr и приложение XMPP. Приложение XMPP было подключено к серверу openfire и успешно отправляет сообщения с мобильного телефона Android, чтобы исправить клиентский мессенджер на моем ноутбуке. Теперь я хочу сделать фотографию через камеру в приложении ocr, а затем преобразовать ее в текст, который хранится в строке. Теперь я хочу предоставить эту строку клиентскому приложению XMPP на своем мобильном телефоне, чтобы он мог отправить этот текст в клиентский конвертер на моем ноутбуке. Я успешно могу объяснить свой сценарий здесь. Я попробовал программирование сокетов, но это не удалось. Затем я заметил, что кто-то говорит, что это можно сделать с помощью объекта sharedpreferances, но не имеет смысла, как бы приложение xmpp узнало, что ok теперь приложение ocr преобразует текст, и я должен его получить. Помогите мне решить эту проблему. Объяснение вместе с некоторым кодом будет высоко оценено!Обмен данными между двумя приложениями для Android

ответ

0

Ваши вопросы: Как отправить данные из приложения OCr работает ваш телефон приложения XMPP работает в вашем же телефоне.

В основном вы ищете решение о том, как будут взаимодействовать два приложения (процессы).

решение:

Pre requisites1: есть действие, согласованные для обоих ОРЗ и XMPP приложений, которые будут транслироваться.

Pre requisites2: Создайте таблицу базы данных в своем приложении ocr, чтобы сохранить текст.

Pre requisites3: создать контент-провайдера на верхней части базы данных

Теперь, когда в вашем приложении OCr вам потребуется некоторое изображение, Положи камеры преобразуются текстовые данные в таблицу базы данных. Отправьте трансляцию с вышеуказанным согласованным ACTION, чтобы приложение XMPP понимало, что ваши данные готовы. При отправке этого широковещательного сообщения отправьте URI для таблицы, в которой вы поделили текст.

С другой стороны, после того, как приложение xmpp получает широковещательную передачу в своем приемнике, на основе URI, оно может запрашивать и извлекать данные из таблицы приложения ocr через средство определения содержимого.

Примечание. Вы можете непосредственно сохранить изображение своей камеры на SD-карте и указать путь к этому изображению в таблице базы данных. Вместо преобразования изображения в текстовый формат.

Это просто моя случайная мысль о том, как вы можете это сделать. Вероятно, вы можете получить лучшую технику, чем это.

Другие идеи, которые вы можете посмотреть в являются:

  1. Положите общую разделяемую память, между двумя приложениями. поместите общие данные в эту область памяти и получите доступ к ней. (например, как связывание будет внутренне работать)

  2. Дайте одинаковый идентификатор пользователя для приложения ocr и xmpp, чтобы xmpp мог напрямую обращаться к данным таблиц базы данных вашего приложения ocr.Если у двух приложений одинаковые идентификаторы пользователей linux, то оба могут совместно использовать файлы общих предпочтений или файлы базы данных.

Надеюсь, это поможет.

Смежные вопросы