До цього відносяться дві частини: механізм, що дозволяє комунікаційним програмам говорити, що вони можуть ділитися речами, і механізм для додатків із вмістом для спільного доступу. Я розберуся з ними по черзі, але спочатку швидка примітка про наміри .
Інтенції
Намір в Android є те , що використовується для запуску програми. Це може працювати як ярлик або як асоціація файлів Windows. У намірі можна вказати назву програми, яку потрібно запустити, але це не обов'язково. Він також може вказати дію, яку потрібно виконати (наприклад, "відкрити основну діяльність", "переглянути цю URL-адресу", "створити запис у календарі") та тип MIME об'єкта, на який він буде діяти (наприклад, те, що потрібно переглянути має тип зображення / jpeg). Деякі назви дій притаманні певній програмі, але багато людей стандартизовані Android, щоб програма могла взаємодіяти.
Фільтри намірів і додаток для зв’язку
Кожен додаток задає фільтри намірів, щоб сказати, які дії він може виконувати. наприклад, програма перегляду зображень реєструє фільтр намірів для "перегляду цієї URL-адреси", де тип MIME - "image / *"; веб-браузер зареєструє фільтр намірів для "перегляду цієї URL-адреси", де схемою URL є "http" або "https". Щоб мати змогу поділитися речами, додаток реєструє фільтр намірів для наміру "надіслати" або з певним типом (наприклад, якщо він може ділитися лише фотографіями), або будь-якого типу.
Додаток для вмісту
Додаток, який хоче поділитися певним вмістом, створює наміри дії "поділитися" та URL-адресу, що вказує на вміст, яким потрібно поділитися. (Це часто "тимчасова" URL-адреса, яка надає додатку, що отримує тимчасовий доступ до файлу в приватному сховищі додатка вмісту або до потоку, створеного програмою вмісту.) У ньому не вказано ім'я програми для обробки умисел. Потім він надає цю мету рамці Android і просить Android відобразити діалогове вікно вибору . Android порівнює наміри з фільтрами намірів з усіх встановлених додатків, створює список і показує його користувачеві. Коли користувач вибирає певний додаток, Android запускає цей додаток і передає йому наміри. Додаток використовує URL для отримання вмісту з оригінального додатка.
Нове в зефірі: Пряма частка
У Marshmallow є ще один механізм, який називається Direct Share . Це доповнює механізм намірів, щоб ви могли обирати людей чи групи, до яких можна поділитися безпосередньо з діалогового вікна вибору, пропускаючи додатковий крок "кому ви хотіли б надіслати його". Це працює трохи інакше: додаток для зв’язку має надавати послугу. Коли додаток із вмістом запитує вибір, Android запускає сервіс для кожного відповідного додатка. Сервіс повертає список відповідних цілей спільного доступу , а Android збирає всі ці окремі списки до списку, який відображається у діалоговому вікні.