Получите общий доступ к контенту через специальные возможности в приложении для Android

У меня есть приложение для Android, которое позволяет людям делиться с ним контентом из других приложений. Когда он получает общие данные, он ищет URL-адрес в общем тексте, выбирает страницу и выполняет обработку полученных данных. Это разработано с определенной целью, а не для всех приложений.

Он отлично работает, за исключением того, что люди должны щелкнуть значок общего доступа, а затем выбрать имя нашего приложения. Благодаря доступности мы можем уменьшить эту работу для пользователей. Мы можем получить текст, отображаемый в приложении.

  1. Возможно ли получить контент, который мы получили бы, если бы нажали кнопку «Поделиться». Или же
  2. Можно ли активировать кнопку «Поделиться» и выбрать наше приложение, не беспокоя пользователя?

person Sriram    schedule 03.10.2015    source источник


Ответы (2)


Вы можете попробовать это, если это только для 1 конкретного приложения. См. вопрос Как нажать кнопку в настройках с помощью AccessibilityService? который нажимает кнопку. Это не будет масштабироваться, если вы хотите сделать это для большего количества приложений. Однако вы можете проанализировать текст, отображаемый на экране, найти http-ссылки и обработать их в фоновом режиме, а затем отобразить плавающую кнопку, например Браузер пузырей ссылок

person Aegis    schedule 06.10.2015

Вы можете просто активировать активность общего доступа вашего приложения, когда вы обнаружите текст из другого приложения; но вопрос в том, как вы узнаете, когда пользователь закончит вводить текст?!

Один из способов — разместить общесистемную плавающую кнопку, похожую на Facebook Messenger, и после того, как пользователь щелкнет ее, текстом можно будет поделиться. Это уменьшит количество кликов, которые должен сделать пользователь.

So,

1) Да, текстовый контент можно получить через AccessibilityService.

2) Нет, вы не можете автоматизировать это действие.

person Prasad Pawar    schedule 20.10.2015