Как добавить приложение в команды ios
Перейти к содержимому

Как добавить приложение в команды ios

  • автор:

Как открывать любимые приложения через значки Пункта управления и экрана блокировки в iOS 13

Вы знали, что в iOS 13 автоматизация приложений стала ещё лучше благодаря быстрым командам? Теперь вы можете делать то, чего нельзя было раньше. К примеру, открывать сторонние приложения через значки на экране блокировки и значки Пункта управления.

iOS-13-Shortcuts-Automations-Lock-screen-Camera-Halide-004-251×500

В iOS 13 в приложении Команды появилась новая функция Автоматизация. С её помощью устройство самостоятельно реагирует на смену условий. Ниже мы расскажем обо всём подробнее.

Автоматизация – что это значит?

С помощью автоматизации вы можете настроить значки на экране блокировки и в Пункте управления так, чтобы они запускали сторонние приложения. Разве не здорово? Для этого в приложении Команды нужно настроить новые автоматические триггеры, которые будут выполняться на фоне.

К примеру, с помощью автоматизации вы сможете выбрать конкретные локации, в которых ваш iPhone будет сам включать Авиарежим или режим «не беспокоить». Это может быть кинотеатр, в который вы часто ходите.

На данный момент доступны следующие триггеры:

  • Авиарежим: Выполняет действия при включении или отключении Авиарежима.
  • Будильник: Можно добавить действия на сценарий, когда вы откладываете будильник, отключаете его, или когда он начинает звенеть.
  • Тренировка: Действие при запуске или завершении тренировки на Apple Watch.
  • Прибытие: Действия выполнится по прибытию в конкретные места. Также можно настроить время: сразу после прибытия, спустя 10 минут и т.п.
  • Перед уходом: Действия можно выполнять за 5, 10, 15, 30 или 60 минут до ухода из дома.
  • Bluetooth: При подключении конкретных устройств и аксессуаров.
  • CarPlay: При подключении и отключении от CarPlay.
  • Не беспокоить: При активации и отключении режима «Не беспокоить».
  • Ухожу: Действие выполняется, когда вы покидаете локацию.
  • Режим энергосбережения: При активации и отключении режима.
  • NFC: Действия при распознавании конкретных NFC-тегов.
  • Открыть приложение: Действие выполняется при открытии конкретного приложения.
  • Время суток: Действия выполняются в зависимости от времени суток: на рассвете или закате или же в конкретное время.
  • WiFi: При подключении к конкретным сетям.

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

Как использовать автоматизацию в iOS 13

Для примера мы создадим автоматизацию, которая будет открывать одно приложение при открытии другого.

1) Откройте приложение Команды на своём iPhone или iPad с iOS 13.

2) Внизу выберите вкладку Автоматизация.

3) Нажмите «+» в правом верхнем углу, а затем Создать автоматизацию для себя.

1

4) Выберите триггер Открыть приложение в секции с заголовком Настройки.

5) На открывшемся экране выберите приложение, которое хотите использовать для открытия второго. У нас это Камера. После этого нажмите «Готово».

2

6) Нажмите Далее.

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

index

8) Нажмите Далее.

9) Нажмите на переключатель Спрашивать перед запуском, чтобы отключить его, и подтвердите действие. После этого нажмите Готово.

Поздравляем, вы только что создали свою первую автоматизацию в iOS 13!

Теперь, когда вы нажмёте значок Камеры на экране блокировки, откроется выбранное вами приложение.

Как работает автоматизация

Автоматизация будет работать вне зависимости от того, как вы откроете приложение Камера.

Это можно сделать из Дока, с домашнего экрана или через другую команду. Работает и значок камеры в Пункте управления. Если приложение можно открыть через виджет, то автоматизация сработает и там.

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

Вы можете привязать к стандартному приложению Камера какое-нибудь более продвинутое стороннее с камерой и использовать его.

iOS-13-Shortcuts-Automations-Lock-screen-Camera-Halide-005

Если вы медленно проведёте по экрану блокировки влево, то увидите, что сначала появится интерфейс Камеры, а потом он поменяется на другое выбранное вами приложение.

Настройка значков Пункта управления

С помощью автоматизации можно настраивать даже значки Пункта управления. С помощью этих значков даже можно выполнять сложные команды.

Автоматизацию нельзя привязать к меню 3D Touch на домашнем экране или в Пункте управления. К примеру, если вы используете 3D Touch на иконке Камеры и выберите конкретное действие, оно не сработает. Вместо этого просто откроется выбранное вами приложение.

Вот несколько примеров действий, которые можно выполнять через значки Пункта управления:

  • Режим энергосбережения: Сначала предлагает открыть приложение Музыка, а затем отключает режим.
  • Диктофон: Открывает приложение Just Press Record.
  • Wallet: Открывает мобильный банк.
  • Калькулятор: Открывает приложение PCalc.
  • Заметки: Открывает приложение Drafts.
  • Камера: Открывает приложение ProCamera.

Другие функции приложения Команды в iOS 13

Команды в iOS 13 также подбирают рекомендации автоматизации на основе ваших привычек. К примеру, когда вы идёте на работу или в спортзал. Колонки AirPlay 2 теперь можно использовать в сценариях HomeKit и автоматизациях для доступа к песням, плейлистам и радиостанциям.

Вы также можете выполнять свои команды с помощью автоматизации. Приложение Команды есть в iOS 13 по умолчанию, скачивать его не надо.

Быстрые команды Siri

Одна из полезных (по моему мнению) фич iOS 12, представленных на WWDC 2018 — Siri Shortcuts.

Шорткат (англ. shortcut) — быстрая команда, короткий способ совершить какое-либо действие в обход стандартному сценарию.

В своих приложениях вы можете привязывать шорткаты для некоторых действий. Обучаясь на том, как и когда пользователь их выполняет, Siri начинает по-умному, в нужное время и место, предлагать ему эти шорткаты и, что самое крутое, пользователь сможет их вызывать фразами, которые сам к ним привяжет! Под катом подробнее.

Как это работает

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

Посмотреть эти шорткаты можно в «Настройки → Siri и поиск«.

На скриншоте выше отображаются последние три шортката, которые словила система с разных приложений. Если мы нажмем на кнопку “More shortcuts”, то увидим все шорткаты, доставленные в систему каждым приложением.

При определенных настройках в коде создания шортката, Siri будет предлагать эти шорткаты пользователю на заблокированном экране, в центре уведомлений и поиске, ориентируясь на то, как часто мы пользуемся этими действиями, в какое время, по каким дням недели, где и на другие факторы.

Например, если в пятницу вечером вы обычно ищите банкоматы, то обучившись, по вечерам пятницы Siri будет предлагать вам шорткат с этим действием.

К каждому шорткату мы можем добавить свою голосовую команду, если нажмем на иконку «+«.

Произносим голосовую команду, нажимаем «Done», и теперь мы можем выполнять действие, стоящее за шорткатом, с помощью голоса через Siri. Получается, что чать функциональности вашего приложения пользователь сможет выполнять через Siri, не открывая само приложение. Шорткат с фразой сохранился в «My shortcuts».

Создание шорткатов

Для разработки нам понадобятся XCode 10 и iOS 12. На момент написания статьи оба они на стадии Beta.

Шорткат можно создать либо через NSUserActivity , либо через Intent .

Пользователь нажимает на шорткат, который передает команду с параметрами ( NSUserActivity ) нашему приложению, а оно само решает, как эту команду следует обработать (открыть окно текущего курса USD, или окно заказа нашей любимой пиццы). Это старый-добрый Spotlight shortcut, который мы все знаем, но по-умному предлагаемый Siri.

Шорткаты, созданные через Intent интереснее — они позволяют выполнить команду сразу в интерфейсе Siri, не запуская вашего приложения. Раньше набор Intent ‘ов был жестко задан Apple: перевод денег, отправка сообщений, и прочих. Теперь же, у нас, разработчиков, появилась возможность создавать свои Intent ‘ы!

Независимо от того, как создавался шорткат — он проходит 3 стадии жизненного цикла:

  1. Объявление (Define)
  2. Доставка в систему (Donate)
  3. Обработка приложением (Handle)

Мое исследование показало, что одно приложение может доставить в систему не более 20 шорткатов.

Дальше рассмотрим, как одарить наше приложение способностью создавать шоркаты и как с ними работать внутри него.

Создание шорткатов через NSUserActivity

Разберем первый, простой тип шорткатов, которые открываются через NSUserActivity .

Например, в приложение мобильного банка у нас есть экран поиска банкоматов и я часто их ищу. Для того чтобы попасть на экран с картой банкоматов, мне приходится запустить приложение, перейти на таб «Еще» в таббаре, выбрать раздел «Инфо» и уже там нажать на кнопку «Банкоматы».
Если мы создадим шорткат, который сразу ведет на этот экран — пользователь сможет попасть в него в одно касание, когда Siri предложит ему его, например, на заблокированном экране.

Объявляем шорткат (Declare)

Первым шагом будет объявление типа нашей NSUserActivity (можно сказать, что это ее идентификатор) в info.playlist:

Доставляем шорткат в систему (Donate)

После объявления мы можем создать NSUserActivity в коде нашего приложения с типом, который мы задали выше в info.playlist:

Чтобы активити попала в список шорткатов системы, ей необходимо задать title , и выставить свойство isEligibleForSearch в true . Другие свойства не являются необходимыми для добавления в шорткаты, но их присутствие делает шорткат более читаемым и дружелюбным для пользователя.

Огонь! NSUserActivity есть, чтобы доставить ее в систему, осталось сделать последний шаг.

У ViewConroller ‘а есть свойство userActivity , которому нам надо присвоить созданную выше activity :

Как только эта строка выполнится, из этой активити создастся шорткат. Он доставится в систему и отобразится в настройках Siri (Настройки → Siri и поиск). После чего Siri сможет предлагать его пользователю, а пользователь сможет назначить ему свою голосовую команду.

Примечание: в документации Apple сказано, что вместо присваивания активити вьюконтроллеру, достаточно вызвать у активити метод becomeCurrent() . Однако у меня это действие не доставило активити в систему и шорткат не появился в списке

Чтобы проверить, что все сработало, открываем Настройки > Siri и поиск — шорткат на базе нашей активити должен быть в списке.

Обработка шортката приложением (Handle)

Когда пользователь перешел по шорткату из центра уведомлений или активировал его голосом, запускается приложение, и мы должны обработать этот шорткат.

activity пробросится нам в методе AppDelegate ‘a:

Итого

Шорткат на базе NSUserActivity создается следующим образом:

  1. Объявляем тип(идентификатор) NSUserActivity в info.plist.
  2. Создаем NSUserActivity в коде и настраиваем
  3. Назначаем активити viewController’ у.

Создание голосовых команд из приложения

Итак, если пользователь откроет Настройки > Siri и поиск, то увидит список своих шорткатов, который создавался различиными приложениями, и нашим в том числе. Нажав на «+«, пользователь сможет создать любую голосовую команду и связать ее с выбранным шорткатом. Однако каждый раз заходить в настройки неудобно для пользователя, многие даже не догадываются о такой возможности.

Круто, что можно привязать голосовую команду к определенному действию прям внутри приложения.

Допустим, пользователь совершил какое-то действие, оно доставилось в систему, он хочет его сохранить. Мы можем добавить кнопку «добавить действие в Siri«(назвать и нарисовать кнопку можете как угодно) на экран нашего приложения, тогда пользователь, нажав на нее, сможет связать это действие с голосовой командой изнутри приложения, не заходя в настройки.

По нажатию на кнопку следует модально открыть экран добавления голосовой команды шорткату в Siri INUIAddVoiceShortcutViewController , или экран редактирования голосовой команды INUIEditVoiceShortcutViewController , если такой уже создан. Незарефакторенный action такой кнопки будет примерно следующим:

Так, выглядят экраны добавления и редактирования голосовой команды для шортката Siri:

Также мы должны реализовать делегатные методы этих viewController’ов, в которых их нужно спрятать dismiss(animated: true, completion: nil) и, если необходимо, обновить текущий экран. Например, если раньше на экране была кнопка «добавить голосовую команду», то после добавления голосовой команды эта кнопка должна либо исчезнуть либо измениться на «редактировать голосовую команду».

Шорткаты, созданные при помощи Intent

До сих пор мы говорили только про шорткаты, которые открывают приложение, и передают туда опредленные данные в NSUserActivity .

Но вернемся к шорткатам, созданным через Intent , которые позволяют совершить некоторые действия не открывая приложение. Тут начинается самое интересное.

Представим, пользователь заказывает свою любимую пиццу. Он будет заказывать ее много раз, когда захочет, и он даже добавил голосовую команду на шорткат этой пиццы — и это упрощает его жизнь. Но мы можем сделать для него больше — мы можем сделать так, чтобы подав голосовую команду Siri, система не кидала его в приложение, а показала информацию о заказе и заказала пиццу сразу в интерфейсе Siri! Это как раз тот случай, когда пользователю не понадобится открывать само приложение, чтобы совершить какое-то действие.

Сначала заходим в настройки проекта, выбираем главный таргет, вкладку Capabilities и включаем доступ к Siri.

Наше приложение может взаимодействовать c Siri, но происходит это не в основном коде приложения, а в отдельном таргете-расширении Intents Extensions

Для начала этот таргет необходимо создать: File → New → Target, выбираем Intents Extensions. XCode предложит создать еще target-расширение для окошка отображения вашего действия в Siri, если есть в этом потребность, то соглашаемся.

Объявляем шорткат (Declare)

Основное нововведение SiriKit’a в iOS 12 — возможность создавать свои Inetnts , к тем, которые уже были раньше.

Для этого нужно создать новый файл: File → New → File, выбрав из секции Resource тип SiriKit Intent Definition File.

В итоге, появится файл с расширением .intentdefinition, в котором можно создавать свои Intents . Открываем файл, и там где написано «No Intents» внизу есть иконка «+» — нажимаем на нее. «New Intent«. В списке появится интент, которому можно добавить параметры. В случае действия с заказом пиццы, в качестве параметров можно добавить количество пицц, и вид пиццы для заказа. Для количества выберем тип Integer , а для вида пиццы выберем тип Custom , что в коде будет представлено классом INObject .

Теперь пару строк фрустрации:

Пользователь не сможет передавать одной и той же сохраненной голосовой команде разные параметры. Увы!

Для чего параметры:

Допустим, вы создаете сущность «Покажи курс %currency «, где currency — это параметр сущности. Это не значит, что пользователь может говорить фразы «Покажи курс доллара», «Покажи курс биткойна» и т.д. Из коробки это не будет работать так. Но это означает, что если пользователь просмотрел курс доллара — то создался шорткат «Покажи курс USD», потом, когда он просмотри курс биткойна, создается шорткат «Покажи курс BTC» и т.д. Иными словами у него может быть несколько шоркатов, которые базируются на одной и той же intent, но с разными параметрами. Каждому из шорткатов пользователь сможет задать свою голосовую команду.

Хорошо, создав интент в файле .intentdefinition, XCode автоматически сгенерирует класс для этого интента (прим.: он не отобразится в файлах проекта, но будет доступен для использования) Этот автосгенерированный файл будет только в тех таргетах, которым принадлежит .intentdefinition файл.

После создания интента в файле .intentdefinition мы можем создавать наши интенты в коде.

Доставляем шорткат в систему (Donate)

Для того, что бы эта сущность попала в список шорткатов — нужно ее задонатить. Для этого создается INInteraction объект с экземпляром вашего интента, и у этого интеракшна вызывается метод .donate

После выполнения этого кода шорткат на базе интента доставится в систему и отобразится в Настройках Siri.

Обрабатываем шорткат приложением (Handle)

Следующий шаг — это обработать интент, когда пользователь нажмет на него в садджестах сири или вызовет его голосовой командой.

Мы уже создали таргет-расширение для Siri и в нем есть предсозданный класс IntentHandler , у которого есть один единственный метод — `handle(for intent)«

В этом методе мы определяем тип входящего интента и для каждого типа создаем объект-обработчик, который будет обрабатывать этот интент. Создадим обработчик для нашей OrderPizzaIntent , и реализуем в нем протокол OrderPizzaIntentHandling , который уже автосгенерирован после создания вашей Intent в .intentdefinition.

Протокол содержит два метода confirm и handle . Сначала вызывается confirm где происходит проверка всех данных и проверяется доступность выполнения действия. Затем сработает handle в коротом действие надо выполнить.

Оба этих метода обязательно должны вызвать completion c ответом OrderPizzaIntentResponse (он тоже автосгенерирован), иначе Siri просто будет долго ждать после чего выдаст ошибку.

Более подробные ответы от Siri

Есть стандартный, автосгенерированный набор кодов ответа — enum OrderPizzaIntentResponseCode , но для дружелюбного интерфейса их может оказаться недостаточно. Например на этапе confirm может возникнуть несколько разных ошибок — кончилась пицца, пиццерия не работает в это время и т.д. и пользователю следует узнать о данных фактах, вместо стандартного сообщения «Ошибка в приложении». Помните мы создали Intent в файле .intentdefinition? Вместе с самим интентом создался еще и его Response в котором можно добавить свои варианты ошибок и успешных ответов, и настроить их параметрами:

Теперь мы можем сообщать пользователю более информативные ошибки и ответы:

Отрисовка Intent ‘а

Если мы создали таргет-расширение Intent Extension UI то мы можем нарисовать кастомную вьюшку в Siri для нужных нам интентов. У нас есть MainInterface.storyboard и IntentViewController , в которых мы можем набросать их дизайн. Этот вью контроллер реалзиует протокол INUIHostedViewControlling и конфигурация вьюшки происходит в методе configureView

Что бы этот метод вызвался, необходимо в info.plist, который относится к таргету-расширению Intents UI, добавить название нашего интента в массив NSExtension -> NSExtensionAttributes -> IntentsSupported

В зависимости от дизайна вашей вьюшки в Siri и от interaction.intent ‘а, который попал в метод, вы можете нарисовать эту вьюшку так, как хотите. Ниже скришоты, как выглядит наш интент в Siri, в поиске и на заблокированном экране.

Стоит учесть, что пользователь не сможет взаимодействовать с кнопками, скроллингом и другими контролами на вашей вьюшке, поскольку метод вызовется с параметром interactiveBehavior = .none , это безусловно накладывает ряд ограничений.

Итого

Шорткат на базе Intent может отрисовать в интерфейсе сири или в центре уведомлений и выполнить действие не открывая приложение. Чтобы его создать нужно:

  1. Включаем в Capabilities возможность использовать Siri
  2. Создать таргеты-расширения Intents Extensions и Intents Extensions UI
  3. Создаем SiriKit Intent Definition File
  4. Создаем свой Intent в этом файле и прописываем ему параметры.
  5. Создаем IntentHandler в котором реализуем методы confirm и hanlde

Рекомендации

Общий код в таргете-расширении Siri и в основном приложении

Если у вас есть код, который используется и в таргете для Siri и в таргете основного проекта — есть 2 способа решить этот вопрос:

  1. Выделить общие классы добавить их к обоим таргетам. ( View → Utilites → Show File Inspector‘e, в секции Target Membership добавить галочки к таргетам, которым нужен доступ к выделенному файлу )
  2. Создать один или несколько таргетов-framework’ов и унести общий код туда.

Предпочтительнее последний способ, потому что эти фреймворки вы потом сможете использовать в других расширениях и проектах. Также стоит отметить, что у этих фреймворков желательно выставить флаг Allow app extension API only , тогда, разрабатывая фреймворк, компилятор будет ругаться, если вы попытаетесь использовать API недопустимое в разработке расширений (например UIApplication ).

Общие ресурсы можно шарить между таргетами через App Groups

Отладка

Тестировать шорткаты помогут помочь:

  1. Настройки телефона Настройки → Developer: переключатели Display Recent Shortcuts и Display Donations on Lock Screen:

  1. Для тестирования Intens можно сразу запускать таргет-расширение, задав в XCode’е фразу, с которой откроется Siri. Для этого нужно выбрать схему для таргета-расширение Siri

Нажать на этот таргет, нажать Edit Scheme.

В поле Siri Intent Query ввести фразу, с которой Siri уже запустится, как будто вы уже сказали ее.

Итого

Предлагаю остановиться и резюмировать, что у нас получилось:

  1. Шорткаты можно создать через NSUserActivity , или через INIntent
  2. Шорткаты нужно объявить(declare), сообщить системе(donate), и обработать(handle).
  3. В приложение можно добавить кнопку «Add to Siri«, нажав на которую пользователь сможет добавить фразу для действия и в дальнейшем вызывать его голосом.
  4. Можно создавать свои Intents в добавок ко встроенным.
  5. Через шорткаты на базе Intents можно создавать действия, которые будут выполняться через интерфейс Siri (либо на заблокированном экране или в поиске) без потребности открывать само приложение.

В документации Apple есть ссылка на Demo проект, который полезно скачать и ориентироваться на него при разработке.

Хотелось бы подчеркнуть, что на момент написания статьи это API на стадии beta . И я часто ловлю проблемы и баги. Во время работы мне периодически попадались следующие:

Как добавить приложение в команды ios

Прикрепленное изображение

Быстрая команда — удобный способ решения задач, состоящих из одного или нескольких шагов и задействующих различные приложения. Вы можете не только запускать простые быстрые команды, которые предлагает Siri, но и использовать программу «Быстрые команды» для создания собственных команд и поиска готовых. Их также можно добавлять на свои устройства. Приложение позволяет объединять несколько выполняемых в разных приложениях шагов для создания удобных способов автоматизации задач.

Приветствую всех пользователей iOS 12 и более поздних версий!
С релизом новой версии мобильной операционки в наш арсенал добавился новый инструмент для более глубокого взаимодействия с Сири — Команды с помощью Siri.

C приходом iOS 13.1 в командах появились автоматизации.
Теперь вы можете настроить триггер команды по времени, местоположению, запуску приложения или какого-либо системного триггера из списка.
К сожалению триггеры по местоположению только выведут напоминание о запуске команды на экран блокировки, подтверждать запуск придется вручную. Для других триггеров можно отключить запрос этого подтверждения. Скорее всего такая защита связана с опасениями Apple относительно конфиденциальности пользователей.
Также все айфоны начиная с моделей Xs и Xr (модель Х и более старые в пролете), теперь поддерживают сканирование NFC меток в фоновом режиме. Это значит что вы можете накупить себе меток и назначить на них сценарии (правда не все метки распознаются айфоном, так что обращайте внимание на отзывы).
Для автоматизаций систем «умного дома» есть отдельная тема. По всем соответствующим вопросам просьба обращаться туда.
А с появлением iOS 14 появилась возможность запускать команды по двойному или тройному тапу по задней крышке айфона (работает на айфонах от 8-го и выше).

Сири теперь может глубоко взаимодействовать с командами.
Мало того, что теперь не нужно записывать отдельные фразы для запуска команд (теперь название команды и есть ее триггер). Но также внутренние меню команды (запросы ввода информации, выбор из меню и т.п.) будут озвучены Сири.

Также важно знать, что команды созданные на iOS 13 не будут запускаться на iOS 12. При апгрейде системы, команды также проапргейдятся и при возможном откате вам нужно будет их либо заново создавать, либо заново скачать.
По этой же причине лично я больше не смогу оказывать помощь по командам, пользователям, по каким-либо причинам остающимся на iOS 12.
P.S. Это также верно и при переходе с iOS 13 на iOS 14.

  • Подробнее о том, что такое Команды (Siri Shortcuts) и как с ними работать читаем тут и тут (на английском).
    по автоматизациям от ZJ_Adram.
    для обсуждения вопросов автоматизации систем «умного дома».
  • Дружественный Телеграмм-канал с большой библиотекой команд.
    с командами от зарубежных авторов (поддерживается автоматическое обновлений версий команд). Подробнее в этом посте.
    об актуальных ресурсах по «командам» (на русском).
    о нововведениях в командах в iOS 13 (на русском).
    — приложение с набором инструментов расширяющих функционал команд (только для iOS 13).

Можно ли настроить автоматический запуск команды (например по местоположению)?
На iOS 12 — нет. На iOS 13 — можно, но с определенными ограничениями.

Сири выдает ошибку при запуске команды: Siri не может запускать Команды с вызовом сторонних приложений, когда язык Siri — русский (на iOS 12) (источник). Исправлено на iOS 13.

Как настроить интеграцию «Кoманд» с Mi Home?
Читаем тут и тут.

Как запустить скачанную команду на iOS 13? (разрешение для запуска «ненадежных команд»)
Если вы видите похожее сообщение на вашем телефоне:

Прикрепленное изображение

тогда читайте эту статью внимательно и до конца.

Список триггеров автоматизаций в которых можно отключить запрос на подтверждение от пользователя ( iOS 14 ).
спасибо Exrector

Прикрепленное изображение

Прикрепленное изображение

Антипиратская организация BREIN арестовала сервера Moonwalk который обеспечивал большую часть трафика для нелегальных онлайн-кинотеатров. Кодик частично тоже полагался на Moonwalk поэтому часть материалов может быть недоступна пока они не найдут новый источник или не создадут свои базы.

Кодик: UPD (22.10.2019) В связи со сложностью ситуации мы приостанавливаем работу плееров по европейским, российским и американским фильмам и сериалам. Подобный контент больше не будет добавляться, а весь старый контент в скором времени будет скрыт. База продолжить функционировать в стандартном режиме для дорам и другого азиатского контента. Извиняемся за сложившуюся ситуацию.

ВНИМАНИЕ!
«Команды» могут стать лазейкой для мошенников
, которые смогут получить доступ к вашим фотографиям, контактам и даже деньгам, например отправив платеж через СМС (источник). Будьте бдительны при скачивании команд из сомнительных источников и перед запуском всегда проверяйте схему (внутренности) команды.
На iOS 13 вы даже и не сможете добавить команду не просмотрев всю схему.

Убедительная просьба. Если вы пишете отзыв или просите помощи по команде которая была взята не из этой темы, то, пожалуйста, прикрепляйте также ссылку на саму команду; чтобы можно было ознакомиться и, возможно, решить проблему.

Предлагаю в этой теме делиться кастомными командами.
Для того чтобы поделиться созданной командой, нужно нажать иконку «поделиться» (из меню редактора) и выбрать «скопировать ссылку iCloud» (это упростит импорт с мобильных устройств).

Ниже приведен список команд и шаблонов. Для iOS 14 будут добавляться только новые, созданные на этой системе, команды, тем не менее некоторые команды от iOS 12 и iOS 13 могут быть запущены без ошибок на iOS 14; какие именно можно проверить на личном опыте (это ничем вам не грозит).

Пегий Дудочник — после закрытия проекта «Frosch Kodik», о чем писалось ранее, остаточные наработки «мутировали» в эту прекрасную команду для просмотра фильмов. У Дудочника есть собственный сайт, канал и чат, где можно обратиться к автору по всем интересующим вопросам насчет команды.

    для смены тем оформления от Ars-UA(обновлено).
    — команда для просмотра онлайн-тв каналов. Работает только на территории РФ, поэтому для других стран рекомендуется пользоваться российским VPN.
    — команда для просмотра YouTube в режиме картинка-в-картинке (обычно недоступна для пользователей без премиум аккаунта). Требуется наличие программы Scriptable (бесплатна в маркете). + Еще одна альтернатива от авторского цеха дружественного телеграмм-канала.
    — команда для скачивания контента с уймы источников посредством библиотек YouTube-dl и Gallery-dl. Не совсем стабильна при скачивании контента высокого разрешения (более 720p), требует наличия a-Shell (бесплатна в маркете).
    для проверки номера на спам.

Быстрые Команды в iOS 13

После обновления до iOS 13, миллионы пользователей найдут приложение Быстрые Команды на своих домашних экранах.

Разграничение между командами Siri и пользовательскими командами исчезло, и все команды теперь живут внутри приложения Быстрые Команды. Создание простой, но эффективной команды проще, чем когда-либо, благодаря переработанному пользовательскому интерфейсу Siri и параметрам, которые обеспечивают большую настройку действий приложения.

Среди всех этих изменений, направленных на облегчение адаптации для новичков, Apple также уделила много внимания опытным пользователям: появились новые действия и системные интеграции; команды теперь могут стать частью автоматизации HomeKit, открывая совершенно новый уровень управления в вашем доме.

В некотором смысле, новые команды являются отражением iOS 13: в этом обновлении каждый найдет для себя необходимое, от новых пользователей до экспертов, хорошо разбирающихся в тонкостях приложения.

Синхронизация команд между iOS 12 и iOS 13

iOS 13 использует новый формат файлов для команд, который не имеет обратной совместимости с iOS 12. Это основное изменение невидимо, до того как вы не обновите одно из своих устройств до iOS 13, Например, как у пользователей, которые сегодня оставляют свои iPad работать под управлением iOS 12.

Если вы обновите свой iPhone до iOS 13 и оставите свой iPad работать на iOS 12, новые команды, созданные на iOS 13, не будут синхронизироваться с iOS 12. Кроме того, если вы измените существующую команду на iOS 13, она будет синхронизирована со всеми устройствами, в том числе под управлением iOS 12, где вы больше не сможете ее открыть.

Объединение команд

В iOS 13 Apple отменила один из самых запутанных аспектов приложения Быстрые Команды и фреймворка от iOS 12: команды, создаваемые приложениями, больше не отличаются от пользовательских, и теперь все находится в единой библиотеке.

В iOS 12 для управления пользовательскими командами вы использовали приложение Быстрые Команды, а команды Siri-команды одного действия, настраивались в разделе Siri приложения Настройки. Этот раздел был полностью удален в iOS 13: когда вы добавляете команду из стороннего приложения в Siri, он попадает в библиотеку команд; аналогично, чтобы обнаружить новые команды от сторонних приложений, предложенные системой, вы открываете галерею внутри приложения Быстрые Команды.

При обновлении с iOS 12 до iOS 13 все существующие команды Siri будут перемещены из настроек Siri в приложение Быстрые Команды. Чтобы облегчить путаницу, возникающую в результате того, что в приложении одновременно появляется, скажем, 50 новых команд, все импортированные команды будут помещены в нижней части библиотеки, поэтому вы можете легко выбрать и удалить их все, если они вам больше не нужны.

Функциональное разделение между различными видами команд в iOS 12 было бесспорно озадачивающим; скорее это причинило больше вреда, чем пользы пользователям, которые не могли понять, где найти свои команды Siri в настройках. Объединение команд под одной крышей дает Apple четкий способ продать приложение Быстрые Команды – это то, где вы обнаруживаете и создаете все виды команд – и открывает некоторые увлекательные возможности для начала работы с автоматизацией.

В дополнение к их размещению в конце библиотеки, команды Siri, импортированные из iOS 12, можно легко обнаружить по значку приложения, который их создали вместо монохромных глифов, обычно назначаемых командам. Это дизайнерское решение применяется не только к командам приложений, но и ко всем командам с одним действием, настроенным в iOS 13: После настройки команды с новым пользовательским интерфейсом «добавить в Siri» в iOS 13 или при создании одной команды на основе приложения в приложении Быстрые Команды итоговый значок, который вы увидите в библиотеке, будет содержать значок приложения, предоставляющего действие.

Это хороший способ различать различные типы команд в библиотеке: если вы прокручиваете и видите значок приложения, вы будете знать, что команда состоит из одного действия, предлагаемого приложением, и ничего больше. Если вы добавите какое-либо действие к команде на основе приложения, значок приложения исчезнет, оставив вам глиф по умолчанию для новых команд.

В то время как библиотека, это место где вы управляете всеми своими командами, Apple также пришлось найти новое место для обнаружения и установки других команд от сторонних приложений. В соответствии с идеей объединения команд в одно приложение, компания выбрала существующую галерею команд для заполнения этой роли. Галерея в основном похожа на свой аналог iOS 12, но iOS 13 добавляет новый раздел «команды от ваших приложений» в середине страницы, который позволяет просматривать недавно предложенные команды, а также все команды из отдельных приложений.

Карусель команд, выделенных в этом разделе, является эквивалентом списка «рекомендуемые команды» iOS 12 в настройках. Чтобы просмотреть список всех команд, доступных для всех приложений в системе, вы можете нажать кнопку «Просмотреть все», и галерея приведет вас к списку, который содержит недавно предложенные команды каждого приложения.

В зависимости от того, какие приложения вы установили или недавно использовали, iOS 13 предложит различные команды, которые вы можете настроить с помощью пользовательского интерфейса «добавить в Siri», нажав на них.

Есть еще одно важное различие с iOS 12, которое стоит отметить: раздел «команды из ваших приложений» заменяет обнаружение команд из приложения «Настройки», но он не предлагает все функции, которые вы могли бы найти в настройках в прошлом году. То, что галерея предоставляет в iOS 13, — это список предлагаемых команд; это не все действия, которые приложение позволяет использовать системе – только те, которые Siri считает, что вы можете настроить прямо сейчас.

Как увидеть все доступные действия для приложения? Создайте новую пустую команду в библиотеке, выберите нужное приложение в категории «Приложения», и там вы увидите все действия, которые поддерживает приложение. Кроме того, сторонние приложения могут реализовать свои собственные форматы действий, чтобы показать пользователям все возможности, которые они могут задействовать, но это зависит от разработчиков (PCalc делает это). По умолчанию галерея-это место, где вы обнаруживаете предлагаемые команды, а библиотека-это место, где вы создаете и управляете всем остальным.

Решение отображать только некоторые команды приложений в галерее может показаться нелогичным на первый взгляд, но подумайте о конечной цели Apple: с объединением команд компания хочет предоставить пользователям путь от простой до более сложной автоматизации – от основных команд, которые всегда полезны, до более персонализированных автоматизаций. Удаляя команды Siri из настроек, Apple подталкивает пользователей к галерее, где они будут доступны для сотен пользовательских команд, с которыми они не были знакомы раньше; и, используя библиотеку для просмотра всех команд, предлагаемых приложением,они стимулируют создание этих персонализированных команд. Apple надеется, что галереи будет достаточно, чтобы удовлетворить ваши потребности в командах с предложениями и кураторскими выборами; но как только вы достигнете точки, где вы хотите добавить больше команд для своих любимых приложений, компания хотела бы, чтобы вы начали создавать свою первую команду прямо там, в библиотеке, где вы обнаружите все другие возможные действия.

Добавить в Siri

Основная предпосылка экрана «добавить в Siri» не изменилась с iOS 12: когда вы сталкиваетесь с действием приложения, которое вы хотели бы вызвать снова в будущем, вы можете добавить его в Siri и дать ему пользовательскую фразу активации. Однако, как вы это делаете, и взаимодействие с пользовательским интерфейсом «добавить в Siri» полностью отличается в iOS 13.

В iOS 13 экран «добавить в Siri» имеет новый дизайн, который более четко представляет причину и следствие: вверху у вас есть голосовой триггер с надписью «Когда я говорю», за которым следует действие, просто обозначенное как «Сделать». Дизайн этого экрана не может быть более очевидным; он напоминает не безызвестный IFTTT.

При добавлении команды для Siri в iOS 13 вам больше не нужно произносить фразу: Вы можете просто ввести ее с клавиатуры. Это фантастическое изменение, которое поможет увеличить использование команд от приложений через Siri: так многие из нас откладывал и в конечном итоге забывали о создании команды, потому что не могли записать фразу в нужный момент. С возможностью ввода пользовательских фраз, вы можете настроить свой опыт Siri в тишине, не беспокоя тех, кто вокруг вас. Что еще более важно, поскольку вам больше не нужно говорить фразу Siri, система не будет неправильно воспринимать вашу пользовательскую фразу вызова, что означает, что вам не придется подтверждать фразу вторичным шагом или принимать предложения по альтернативному написанию.

Однако наиболее последовательное изменение экрана «добавить в Siri» в iOS 13 находится в разделе «Сделать», где вы можете настроить поведение команды при активации из Siri.

В iOS 12 добавление команды к Siri было односторонним действием: после поиска действия приложения, которое вы хотели интегрировать с Siri, все, что вы могли сделать, это записать фразу и сохранить ее. Действие было предварительно настроенным элементом, который не мог быть настроен пользователем; если вы хотели изменить поведение команды Siri, вам нужно было либо найти другой, либо создать новый с нуля в приложении.

Введение в параметры команд в iOS 13. Приложения, которые предоставляют команды в iOS 13, могут делать это с поддержкой динамических параметров, которые изменяют поведение действия и позволяют вам “общаться” с приложением. Например, утилита преобразования может иметь параметр для типа единицы измерения, которую вы хотите преобразовать, поэтому вы сможете выбирать между, скажем, сантиметрами и футами при запуске команды; или приложение для регистрации потребления воды может спросить, хотите ли вы зарегистрировать один или два стакана воды с помощью параметра. Поскольку команды могут поддерживать этот новый уровень персонализации в iOS 13, Apple пришлось пересмотреть дизайн экрана «добавить в Siri» соответственно. Если команда от приложения поддерживает параметры, вы сможете нажать кнопку «Сделать», чтобы открыть мини-редактор команды, где у вас будет возможность настроить ее функциональность перед добавлением в Siri.

В случае наличия параметров, у действия отображается стрелочка, предлагающая перейти к настройке.

Благодаря параметрам и проприетарному характеру приложения Быстрые Команды в iOS 13 редактор команд превратился в функцию, доступную для всех приложений, поддерживающих добавление команд в Siri. Таким образом, «добавить в Siri» — это больше, чем экран для записи пользовательских фраз: это вектор для привлечения людей в приложение Быстрые Команды и его более продвинутую, персонализированную автоматизацию. Подробнее о Параметрах и диалоговых командах поговорим в следующих статьях.

Совет: если вы планируете оставить свой iPad на iOS 12 и обновить iPhone до iOS 13, временно отключите синхронизацию iCloud для команд на обоих устройствах, чтобы две библиотеки оставались независимыми, и вы избежите риска повреждения команд в iOS 12.

Организация Команд

В iOS 13 выполнение длительного нажатия на команду вызывает предварительный просмотр действий команды и следующих параметров:

Длительное нажатие на команду вызывает предварительный просмотр действий и набор быстрых действий с командой.

Чтобы выбрать несколько команд для массового копирования или удаления, нажмите кнопку Править в верхнем левом углу, а затем выберите команды, которые вы хотите дублировать или удалить.

Редактирование команд

Изменение расположения кнопок

Кнопки в режиме редактирования были перемещены. Следующие элементы управления были перемещены в нижнюю часть представления:

Обновлено меню действий

Меню действий было переработано. Действия теперь организованы по кнопкам категорий, а не по списку категорий. Меню также содержит предложения действий, которые основаны на том, как вы используете свое устройство.

При нажатии на категорию действий, например скриптов, отображаются действия, связанные с этой категорией.

Входные данные для действий

При выполнении серии действий в iOS 12 выходные данные предыдущего действия всегда будет являться входными для следующего действия.

Как это было в iOS 12. Например, в команде мы хотим использовать выходное значение действия в качестве входных данных для другого, и мы хотим сделать это в нескольких местах. В каждом случае мы использовали действие «Получить переменную» для извлечения значения, прежде чем использовать его в качестве входных данных для следующего действия.

Что изменилось с выходом iOS 13. Такое же поведение при получении выходных данных предыдущего действия, как и получение входных данных, сохранилось, поскольку выход из предыдущего действия автоматически становится входом для следующего действия. И даже указывается соответствующее название входной переменной в каждом действии.

Однако, это происходит по умолчанию, а не как обязательное правило. Каждое действие теперь позволяет указать любые необходимые входные данные для действия, которые были получены ранее. Таким образом, вам больше не нужно использовать действие «Получить переменную» для извлечения выходного значения из более раннего действия и передачи его необходимому действию. Фактически, действие «Получить переменную» больше не существует в командах для iOS 13, пропагандируется использование «Волшебной переменной».

Это позволяет писать команды с меньшим количеством действий.

Управление разрешениями доступа Быстрых команд

При установке и первом запуске команды, которая требует доступа к данным или системе (например, ваше местоположение), у вас запросят разрешение на доступ к необходимым данным.

В iOS 13 теперь вы можете позже отменить доступ к данным и системам на экране Подробно.

Ненадежные Команды

По умолчанию при попытке добавить команду, которая получена по ссылке общего доступа iCloud, а не из стандартной Галереи, вы получите следующее сообщение об ошибке:

Чтобы разрешить ненадежные команды, ознакомьтесь с данной статьей (пожалуйста прочитайте ее до конца!).

После установки ненадежной команды вам потребуется прокрутить и просмотреть все действия внутри нее, прежде чем вы сможете добавить ее, нажав кнопку Добавить ненадежную быструю команду.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *