Функции Launch и Param
Применимо к: приложениям Canvas
Запускает веб-страницу или приложение на основе холста и предоставляет доступ к параметрам запуска.
Launch
Запускает веб-страницу или приложение на основе холста. Функция поддерживает:
- Адрес (обязательно), URL-адрес веб-страницы приложения Canvas.
- Параметры (необязательно), именованные значения для передачи на веб-страницу или в приложение Canvas. В приложении на основе холста параметры можно прочитать с помощью функции Param.
- Target (необязательно), вкладка браузера, в которой следует запустить веб-страницу или приложение Canvas.
Запуск можно использовать только в формулах поведения.
Заметка
Если для открытия Power Apps используется формула Launch и приложение не видно конечному пользователю, рекомендуется проверить, не заблокировано ли приложение блокировщиком всплывающих окон браузера или не ожидает ли браузер ответ пользователя на диалоговое окно с вопросом о том, хочет ли они перейти на новый экран.
Адрес
Веб-страницы запускаются через URL-адрес. Например:
Launch( "https://bing.com" )
Вы можете запустить приложения на основе холста с помощью веб-ссылки или URI приложения (ИД приложения с /providers/Microsoft.PowerApps/apps/
). Чтобы найти эти значения для приложения:
Переход к Power Apps.
Выберите Приложения в левой области навигации.
Выберите приложение.
Выберите Сведения в верхнем меню.
Вы также можете выбрать ... (Дополнительные команды), затем выберите Сведения из раскрывающегося меню.Скопируйте Веб-ссылку.
Веб-ссылка может использоваться на любой веб-странице и запустит приложение на основе холста. Она также может быть использована с функцией Launch. Например:
Launch( "https://apps.powerapps.com/e/{environment id}/a/{app id}?tenantId={tenantId}" )
Собственные приложения на устройстве не могут быть запущены напрямую. На некоторых платформах могут быть доступны косвенные параметры, такие как собственное приложение, устанавливающее пользовательскую схему URL-адресов, или регистрация в веб-браузере, чтобы предлагать параметры для определенных веб-сайтов.
Параметры
Launch может передавать параметры на веб-страницу или в приложение Canvas. Параметры могут задаваться двумя способами:
Список аргументов пар "имя-значение". Например:
Launch( "https://bing.com/search", "q", "Power Apps", "count", 1 )
Запись значений полей. Например:
Launch( "https://bing.com/search", { q: "Power Apps", count: 1 } )
С этой формой легче работать, поскольку она делает связь между именем и значением более четкой. Это единственная форма, которая поддерживает необязательный аргумент LaunchTarget.
Адрес и параметры кодируются в кодировке URL перед передачей, чтобы заменить некоторые не алфавитно-цифровые символы символами %
и шестнадцатеричным числом, как будто функция EncodeUrl была использована на каждом.
При запуске веб-страницы строка запроса параметров может быть включена в конце URL-адреса. Любые дополнительные параметры, предоставленные функции Launch, будут добавлены в конец строки запроса. Строки запроса не работают при запуске приложения на основе холста.
При запуске приложения на мобильном устройстве, где оно уже запущено, параметры в работающем приложении не обновляются. Для обновления параметров требуется перезагрузка приложения.
Target
Используйте аргумент LaunchTarget для указания целевого окна браузера, в котором нужно открыть веб-страницу или приложение. Используйте одно из следующих значений перечисления LaunchTarget или укажите имя пользовательского окна.,
Перечисление LaunchTarget | Описание: |
---|---|
Новый | Веб-страница или приложение открываются в новом окне или вкладке. |
Заменять | Веб-страница или приложение заменяет текущее окно или вкладку. |
имя | Вместо значения перечисления используйте свою собственную текстовую строку для имени окна или вкладки. Self — это только внутреннее имя, которое используется только функцией Launch. Оно не влияет и не соответствует заголовку окна, которое видят ваши пользователи. Если окно или вкладка с данным именем уже существует, его содержимое будет заменено. В противном случае будет создано новое окно или вкладка. имя не может начинаться с символа подчеркивания «_». |
New является значением по умолчанию перечисление при запуске в веб-браузере с Заменить и назвать в качестве доступных параметров. В мобильном плеере Создать задано по умолчанию для веб-страниц с именем в качестве доступного варианта; в то время как текущее приложение на основе холста всегда будет заменено другим приложением на основе холста.
Заметка
- Используя LaunchTarget с любым значением, кроме Создать, во встроенных сценариях (например, Power BI или SharePoint) не поддерживается и может привести к неожиданному поведению. В будущем это поведение может измениться или может вызвать ошибку.
Param
Функция Param возвращает параметр, переданный в приложение при запуске. Если именованный параметр не передавался, функция Param возвращает пустое значение.
- При запуске приложения на основе холста из другого приложения на основе холста используйте аргументы Параметр для функции Launch. Имена и значения параметров будут автоматически закодированы в кодировке URL.
- При запуске приложения на основе холста с веб-страницы добавьте параметры в строку запроса веб-ссылки приложения на основе холста. Это включает в себя добавление
¶metername=parametervalue
при условии, что строка запроса уже была запущена дляtenantId
. Например, при добавлении&First%20Name=Vicki&category=3
будут передаваться два параметра:First Name
со значением"Vicki"
иcategory
со значением"3"
(тип значения — текст). Имя и значение параметра должны быть закодированы в кодировке URL, если они содержат пробелы или специальные символы, аналогично использованию функции EncodeURL. - Имена параметров чувствительны к регистру символов.
- Имена и значения параметров будут автоматически декодированы из кодировки URL для использования в вашем приложении.
- Значения параметров не изменяются, пока приложение не будет перезагружено. Использование Запуска на мобильном устройстве, где приложение уже запущено, не обновляет параметры.
- Даже если параметр содержит число, тип, возвращаемый функцией Param, всегда будет текстовой строкой. Преобразование в другие типы будет происходить автоматически или использовать явные преобразования, такие как функция Value для явного преобразования в число.
Заметка
Для пользовательских страниц единственными параметрами, принимаемыми страницей, являются: recordid и entityName.
Синтаксис
Запуск( Адрес [, Имя параметра1, Значение параметра1 , ... ] )
- Адрес – Обязательно. Адрес веб-страницы или ИД приложения для запуска.
- ParameterNames – Необязательно. Имя параметра.
- Значения параметров – Необязательно. Соответствующие значения параметров для передачи в приложение или веб-страницу.
Запустить( Адрес, { [ ИмяПараметра1: ЗначениеПараметра1, ... ] } [, ЦельЗапуска ] )
- Адрес – Обязательно. Адрес веб-страницы или ИД приложения для запуска.
- ParameterNames – Необязательно. Имя параметра.
- Значения параметров – Необязательно. Соответствующие значения параметров для передачи в приложение или веб-страницу.
- LaunchTarget – Необязательно. Значение перечисления LaunchTarget или пользовательское имя.
Параметр( ИмяПараметра )
- ИмяПараметра - Обязательно. Имя параметра, переданного в приложение.
Зарезервированные параметры
Следующие ключевые слова зарезервированы (независимо от регистра) для внутреннего использования и не должны использоваться в качестве настраиваемых параметров в функции Param():
- amp%3Bauthmode
- amp%3Benableonbehalfof
- amp%3Bhidenavbar
- amp%3Blocale
- appmetadataversion
- authmode
- channeltype
- cordovapath
- correlationid
- отладка
- delegatelaunchurl
- delegatelaunchurl
- disablepreviewredirect
- embedderorigin
- enableonbehalfof
- groupid
- hideappsplash
- hidenavbar
- hint
- hostclienttype
- hostmode
- iframecontainerid
- isfullscreen
- ispreviewmode
- loader
- loaderType
- locale
- расположение
- packagekind
- packageproperties
- playerresourcespath
- playersessionid
- powerappslanguage
- screencolor
- sdkversion
- site
- skipappmetadata
- skipiframecreation
- skiplaunchappcache
- source
- sourcetime
- standaloneconsent
- teamid
- teamtype
- tenantId
- theme
- uselocalpackagehostresources
- userteamrole
Примеры
Простой запуск
Из приложения на основе холста в веб-страницу:
Формула | Description |
---|---|
Запустить( "http://bing.com/search", "q", "Power Apps", "count", 1 ) |
Открывает веб-страницу https://bing.com/search?q=Power%20Apps&count=1. Новое окно или вкладка открывается. |
Запустить( "http://bing.com/search", { q: "Power Apps", count: 1 } ) |
То же, что и в предыдущих примерах, с использованием эквивалентного обозначения записи. Новое окно или вкладка открывается. |
Запустить( "http://bing.com/search", { q: "Power Apps", count: 1 }, LaunchTarget.Replace ) |
То же, что и в предыдущих примерах, с заменой текущего окна или вкладки на результат при запуске в веб-браузере. |
Запустить( "http://bing.com/search", { q: "Power Apps", count: 1 }, "Search Results" ) |
То же, что и в предыдущем примере, создание или замена содержимого окна или вкладки с именем Результаты поиска. |
Из приложения на основе холста в приложение на основе холста
Обновите идентификатор приложения, имя экрана и номер записи соответствующим образом.
Launch( "/providers/Microsoft.PowerApps/apps/YOUR-APP-ID",
{ Navigate: "Second Screen", Record: 34 }
)
Из веб-страницы в приложение на основе холста
Обновите идентификатор приложения, идентификатор клиента, имя экрана и номер записи соответствующим образом.
<html>
<body>
<a
href="https://apps.powerapps.com/play/e/YOUR-APP-ENVIRONMENT-ID/a/YOUR-APP-ID?tenantId=YOUR-TENANT-ID&Navigate=Second%20Screen&Record=34"
>
Launch canvas app
</a>
</body>
</html>
Простое использование функции Param
Простые примеры запуска выше, чтобы запустить приложение на основе холста с веб-страницы или из другого приложения на основе холста, показывают простые примеры для функции Param:
Формула | Описание | Результат |
---|---|---|
Парам( "Навигация") | Параметр Navigate был указан при запуске приложения и возвращается. | "Second Screen" |
Парам( "Запись") | Параметр Record был указан при запуске приложения. Хотя он был передан в качестве числа в функцию Launch, результат из функции Param будет текстовой строкой, которая может быть неявно или явно преобразована в другие типы. | "34" |
Парам( "Пользователь") | Параметр User не был предоставлен. Пустоевозвращается значение, которое можно проверить с помощью функции IsBlank. | пустой |
Пошаговые примеры для Launch и Param
Шаблон макета планшета Витрина товаров был использован для следующих примеров. Чтобы создать приложение с этим шаблоном, выполните действия из статьи о создании приложения и выберите шаблон Витрина товаров. Также можно использовать собственное приложение.
Пример — Launch
Переход к Power Apps.
Выберите Приложения в левой области навигации.
Выберите свое приложение, затем выберите Изменить.
Выберите Вставить в меню, затем выберите Label.
Переместите метку в правый нижний угол экрана.
На панели свойств справа выберите Цвет как белый и установить для параметра Толщина границы значение 1.
Выберите свойство Text справа и введите текст как Планшеты Surface в новостях.
Из списка свойств слева вверху выберите OnSelect.
Введите формулу как
Launch("https://www.bing.com/news/search","q","Microsoft Surface tablets")
. Вы также можете использовать любой другой URL, параметр и ключевые слова по вашему выбору.Сохраните и опубликуйте приложение.
Запустите приложение.
Выберите метку Планшеты Surface в новостях , чтобы запустить поиск новостей по ключевым словам Microsoft Планшеты Surface.
Совет
Для масштабируемости вы можете заменить введенные вручную ключевые слова в функции Launch на переменные.
Пример — Param
Переход к Power Apps.
Выберите Приложения в левой области навигации.
Выберите свое приложение, затем выберите Изменить.
Выберите Вставить в меню, затем выберите Label.
Переместите метку в правый нижний угол экрана.
Выберите свойство Text для метки сверху слева.
Введите формулу как
Param("browser")
. Вы также можете использовать другой параметр по вашему выбору.Сохраните и опубликуйте приложение.
Скопируйте веб-ссылку для вашего приложения из Power Apps.
Откройте новый браузер.
Вставьте веб-ссылку приложения в браузер и добавьте
&browser=Microsoft%20Edge
в конце.Когда ваше приложение запускается, метка показывает переданное значение параметра.
Закройте проигрыватель приложения и отредактируйте приложение.
Выберите App из представления дерева в левой навигации.
Выберите свойство StartScreen в левом верхнем углу.
Введите формулу как
If( Param("screen") = "techspecs", TechSpecs )
.Если функция в свойстве StartScreen проверяет, равен ли параметр определенному значению, в этом случае значение techspecs. И если оно совпадает, возвращает элемент управления экраном TechSpecs в свойство StartScreen.
Заметка
Замените имя элемента управления TechSpecs в функции If именем элемента управления в вашем приложении, если вы не используете шаблон приложения Product Showcase.
Сохраните и опубликуйте приложение.
Откройте новый браузер.
Вставьте веб-ссылку приложения в браузер и добавьте
&screen=techspecs
в конце.Приложение запускается напрямую с TechSpecs в качестве начального экрана.