Без код

Най-бързият начин да добавите печат към Вашето Android приложение. Използвайте стандартния механизъм за споделяне на Android и оставете PrintHand да се погрижи за всичко около печата. Интеграция без код, максимална простота.

Повече

Intent API

Намерете идеалния баланс между лесна реализация и контрол. С нашия Intent API откривате принтери, настройвате опции и печатате от приложението си, като запазвате неговия външен вид и усещане.

Повече

SDK на ниско ниво

Максимален контрол и гъвкавост за напреднали разработчици. Директен достъп до двигателя за печат на PrintHand с пълно персонализиране на интерфейса, работния процес и поведението при печат. Идеално за корпоративни приложения.

Повече

Ние също сме разработчици. Най-бързият начин да разберете тези варианти за интеграция е да видите реален код. Разгледайте нашето примерно приложение в GitHub с работещи примери.

Интеграция без код

Най-краткият път към добавяне на печат във Вашето Android приложение. Чрез стандартния механизъм Share Intent на Android приложението Ви може да предложи печат, без да напишете и ред код, специфичен за PrintHand. Когато потребителите споделят подходящо за печат съдържание от приложението Ви, PrintHand автоматично се появява сред опциите за споделяне, също като приложенията за имейл или социални мрежи.

Този подход е идеален за приложения, които искат да предложат печат с минимални усилия за разработка. Много утвърдени приложения без пряка връзка с PrintHand използват този метод, за да позволят на потребителите си да печатат документи, изображения и друго съдържание. Красотата на тази интеграция е в простотата ѝ: ако приложението Ви вече използва функцията за споделяне на Android за други цели, печатът идва наготово.

Как работи

Когато потребителят избере „Споделяне“ във Вашето приложение и посочи PrintHand от списъка с налични приложения, Android предава съдържанието на PrintHand. След това PrintHand поема целия процес на печат: изобразява съдържанието, показва предварителен преглед, позволява на потребителя да настрои принтера и накрая изпраща заданието към избрания принтер. Приложението Ви само стартира споделянето, а PrintHand се грижи за всичко останало.

Поддържани видове съдържание

  • Изображения: JPEG, PNG, GIF и други стандартни формати
  • Документи: PDF файлове и обикновен текст
  • Уеб съдържание: URL адреси и HTML съдържание
  • Произволни данни: Всяко съдържание, което приложението Ви може да сподели чрез стандартните Android intents

Изисквания

Потребителите трябва да имат инсталирано приложението PrintHand с валиден лиценз, за да печатат. Приложението Ви не се нуждае от специални разрешения или зависимости, само от стандартната реализация на Share Intent на Android, която повечето приложения вече използват.

Реализация

Ако приложението Ви вече има функция за споделяне на Android, не е необходим допълнителен код. Ако няма, реализацията на базово споделяне е лесна със стандартните API на Android ShareCompat или Intent.ACTION_SEND. Документацията и примерният код на PrintHand показват как се прави правилно.

Интеграция чрез Intent API

↑ Към началото

Intent API е мощно междинно решение между споделянето без код и пълната интеграция чрез SDK. То позволява на приложението Ви програмно да открива принтери, да настройва опции за печат и да стартира задания за печат, като запазва контрола над потребителския интерфейс и работния процес на приложението. Това е най-често използваният метод за интеграция от разработчици, които искат реален контрол без сложността на операциите за печат на ниско ниво.

С Intent API можете да създавате собствени диалози за избор на принтер, предварително зададени конфигурации за печат и да вградите печата безпроблемно в съществуващите работни процеси на приложението. Приложението Ви комуникира с PrintHand чрез набор от ясно дефинирани intents за откриване на принтери, настройка на опциите, изобразяване на съдържанието и изпращане на задания. PrintHand обработва тези заявки и връща резултатите на приложението Ви, така че запазвате пълен контрол над потребителското изживяване.

Основни възможности

  • Откриване на принтери: Програмно откриване на наличните принтери през WiFi, Bluetooth и USB
  • Настройки: Управление на размера на хартията, ориентацията, качеството, цветовия режим и други опции, специфични за принтера
  • Изобразяване на съдържанието: Оставете PrintHand да изобрази сложни документи или подайте предварително изобразено съдържание
  • Управление на заданията: Стартиране на печата, следене на състоянието и обработка на резултатите

Процес на интеграция

Приложението Ви изпраща intents към услугата Intent API на PrintHand за конкретни операции. Например, за да отпечата документ, приложението Ви: открива наличните принтери и ги показва в своя интерфейс, позволява на потребителя да избере принтер и да настрои опциите, изпраща intent за печат със съдържанието и избраните настройки и получава потвърждение, когато заданието приключи. Всяка стъпка използва стандартната комуникация чрез Android Intent, което прави интеграцията лесна за Android разработчиците.

Случаи на употреба

Intent API е идеален за приложения със сложно съдържание, например офис документи, карти, собствени формуляри или отчети, които изискват специфично за приложението изобразяване. Подходящ е и когато искате да зададете опциите за печат според вида на документа или предпочитанията на потребителя, или когато трябва да вградите печата в многостъпкови процеси, при които потребителите не бива да напускат приложението Ви.

Изисквания

Потребителите се нуждаят от инсталирано приложение PrintHand с валиден лиценз. Приложението Ви трябва да включи декларациите на услугата Intent API на PrintHand в своя манифест и да реализира протокола за комуникация чрез intents, описан в нашата документация за API и примерния код.

Интеграция чрез SDK на ниско ниво

↑ Към началото

PrintHand SDK осигурява директен достъп на ниско ниво до нашия двигател за печат и дава максимална гъвкавост и контрол за сложни приложения. За разлика от Intent API, който използва интерфейсните компоненти на PrintHand, SDK Ви дава пълна свобода да проектирате всеки аспект на печата. Този подход е идеален за корпоративни приложения, решения под чужда марка (white label) или всяко приложение, при което печатът трябва да се извършва невидимо на заден план, без участие на потребителя.

Със SDK получавате детайлен контрол над всеки аспект на процеса на печат: откриване и филтриране на принтери, управление и инсталиране на драйвери, опашка и приоритизиране на заданията, собствена обработка на грешки и възстановяване. Приложението Ви поема пълна отговорност за целия процес на печат, от показването на опциите за принтер на потребителя до обработката на завършването на заданията и грешките.

Разширени възможности

  • Пълен контрол над интерфейса: Създайте собствени интерфейси за откриване на принтери, настройка и предварителен преглед в стила на приложението Ви
  • Печат на заден план: Изпълнявайте задания за печат без каквото и да е участие на потребителя или интерфейсни компоненти
  • Управление на драйверите: Програмно изтегляне и управление на драйверите за принтери за поддържаните устройства
  • Собствено изобразяване: Пълен контрол над подготовката и изобразяването на съдържанието
  • Корпоративни функции: Опашка на заданията, пакетен печат, автоматичен избор на принтер и собствена обработка на грешки

Сложност на реализацията

SDK изисква по-задълбочено разбиране на концепциите на мобилния печат и значително повече усилия за разработка в сравнение с Intent API. Приложението Ви трябва да осигури пълен интерфейс за откриване на принтери, да показва възможностите и опциите на принтерите, да обработва изтеглянето и инсталирането на драйвери, да управлява жизнения цикъл на заданията за печат и да реализира обработка на грешки и възстановяване. Това усилие обаче се възнаграждава с несравнима гъвкавост и контрол.

Структура на SDK

PrintHand SDK се предоставя като Java библиотека, която се вгражда директно във Вашето Android приложение. Той предлага цялостен API за всички операции за печат с подробна документация за управлението на принтери, изпращането на задания, следенето на състоянието и управлението на конфигурацията. SDK е проектиран да е безопасен за многонишкова работа и ефективен, подходящ за сценарии с голям обем печат.

Случаи на употреба

Идеален за корпоративни приложения с автоматизирани процеси за печат, системи за продажби (POS), които трябва да печатат касови бележки без участие на потребителя, приложения за логистика и доставки с голям обем печат на етикети и решения под чужда марка, в които брандът PrintHand не бива да се появява.

Изисквания

Потребителите се нуждаят от приложението PrintHand или от самостоятелната услуга за печат PrintHand, инсталирана на устройството им с валиден лиценз. Приложението Ви трябва да включи SDK библиотеката в проекта, а за оптимална реализация е необходимо разбиране на протоколите за комуникация с принтери и на архитектурата за печат на Android.

Примерен код и ресурси

За да Ви помогнем да започнете с интеграцията на PrintHand, създадохме цялостно примерно приложение, което демонстрира всичките три метода за интеграция. Примерният код показва добрите практики за всеки подход, обработката на гранични случаи и осигуряването на отлично потребителско изживяване.

Хранилище в GitHub

Нашето хранилище PrintingSample съдържа работещи примери за интеграция чрез Share Intent, Intent API и SDK. Кодът е добре документиран и показва реални модели на употреба. Посетете нашето хранилище в GitHub на адрес:

github.com/DynamixSoftware/PrintingSample

Документация

Подробна документация за API, ръководства за интеграция и ресурси за отстраняване на проблеми са достъпни в wiki страниците на хранилището. Редовно актуализираме документацията според отзивите на разработчиците и новите версии на Android.

Поддръжка

За технически въпроси, помощ при интеграция или докладване на проблеми се свържете с нашия екип за поддръжка на разработчици на support@printhand.com. Ние сме тук, за да Ви помогнем да интегрирате PrintHand успешно във Вашето приложение.

Важно: Всички методи за интеграция изискват потребителите да имат инсталирано приложението PrintHand на своето Android устройство с валиден лиценз за печат. В момента API за интеграция са достъпни само за Android. Възможностите за интеграция в iOS се ограничават до стандартните системни API за печат.