Я создаю приложение и хочу запускать и печатать отчеты (например, отчеты о кристаллах в .net). Как это сделать проще всего? Чтобы быть более конкретным, я создаю приложение, в котором пользователь будет создавать счета для своих клиентов и распечатывать их на принтере Bluetooth. Есть ли простой способ, например, Crystal Reports для Android? Я пытался использовать кристальные отчеты для eclipse, но библиотеки не работают на андроиде (по крайней мере, я не знаю, как это сделать).
Запуск и печать отчетов на Android
Ответы (1)
Во-первых, в Android нет встроенных или собственных возможностей печати просто потому, что Android не имеет представления о том, что такое принтеры.
Однако вы можете использовать сторонние библиотеки.
Чтобы правильно ответить на ваш вопрос, вам нужно будет указать, какие версии Android вы планируете поддерживать своим приложением. Потому что некоторые из различных сторонних библиотек поддерживают только определенные версии Android.
Помимо включения сторонней библиотеки печати в ваше приложение, вы можете отправить широковещательную рассылку с данными, которые вы хотели бы напечатать, и в зависимости от того, какие приложения установлены на устройстве пользователя, пользователь может выбрать приложение, поддерживающее печать. тип данных, которые вы отправляете в намерении.
Вы также можете использовать новую службу облачной печати Google. Это был бы мой предпочтительный выбор, но для фактической печати на физическом принтере пользователю потребуется настольный ПК, сервер или Mac, к которому либо подключен принтер, либо установлен и настроен сетевой принтер. На данный момент это, вероятно, ваш лучший выбор.
Это действительно сложная проблема для решения по нескольким причинам. Во-первых, вам нужно будет выяснить, что вы собираетесь печатать, вам нужно будет отформатировать его таким образом, чтобы его можно было распечатать (PDF, PostScript или ASCII могут назвать несколько). Затем вам нужно будет выяснить, собираетесь ли вы поддерживать печать на принтерах, которые не поддерживают Bluetooth, поэтому, если вы планируете поддерживать печать на сетевом принтере, вам нужно будет находиться в той же локальной сети/VLAN, что и WLAN. к которому подключено устройство Android, и изоляцию точки доступа необходимо отключить. Если вы планируете поддерживать общие принтеры Windows, общие принтеры Mac OS X Bonjour или общие принтеры Zeroconf Linux, вам потребуется либо найти поддерживающие библиотеки, либо реализовать способ поиска различных сетевых ресурсов, а затем способ выбора и сохранения сетевой ресурс для печати.
Поскольку вы планируете поддерживать печать на принтерах с поддержкой Bluetooth; затем есть несколько дистрибутивов Ice Cream Sandwich и Honeycomb, которые могут соединяться с Bluetooth-принтерами (версии Android должны быть 3.0 или 3.1+ [я не совсем уверен, на каком уровне SDK для Honeycomb были реализованы протоколы печати Bluetooth] и 4.0.3+). Что касается фактического форматирования данных для печати через Bluetooth, я не уверен, что можно распечатать и какие версии или протоколы Bluetooth используются. Сегодня утром я проведу дополнительные исследования и отпишусь с информацией, которую смогу найти.