Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Объявление

public static void OpenURL(string url);

Параметры

url URL для открытия.

Описание

Открывает указанный URL-адрес с учетом разрешений и ограничений текущей платформы и среды вашего приложения. Это обрабатывается по-разному в зависимости от характера URL-адреса и с различными ограничениями безопасности в зависимости от платформы среды выполнения.

Примечание. Этот метод можно использовать для открытия не только веб-страниц; следовательно, это имеет важные последствия для безопасности, о которых вы должны знать.

Чаще всего этот метод используется для открытия URL-адресов HTTP (веб-страниц). Если вы указываете адрес веб-страницы в качестве параметра для этого метода, веб-страница открывается в браузере по умолчанию. Это также выведет приложение браузера на передний план.

Помимо протокола HTTP, используемого для адресов веб-страниц, существуют другие типы протоколов, которые можно использовать в URL-адресах, такие как передача файлов (FTP), электронная почта (mailto), доступ к базе данных (JDBC) и другие. специфичные для определенных платформ. На некоторых платформах вы можете использовать OpenURL в Unity для выполнения самых разных задач.

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

Метод OpenURL работает с теми же разрешениями, что и ваше приложение. Например, если ваше приложение работает как проигрыватель WebGL в настольном веб-браузере, оно не сможет получить доступ к локальным файлам на компьютере, потому что сама платформа WebGL работает внутри изолированной программной среды безопасности, что предотвращает это. Если вы ориентируетесь на другие платформы, такие как отдельное приложение EXE, ваше приложение работает с меньшими ограничениями безопасности и без изолированной программной среды, поэтому этот метод более эффективен.

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

На автономных платформах следует учитывать, что этот метод имеет те же последствия для безопасности, что и тип eval. функция, присутствующая во многих других языках программирования.

Если ваше приложение использует OpenURL для открытия строк URL-адресов, полученных от третьих лиц или составленных с использованием каких-либо предоставленных пользователем данных, предоставленные пользователем данные следует считать ненадежными и могут использоваться для запуска произвольного кода в соответствии с те же разрешения вашего приложения. Вы должны очистить ненадежные данные и убедиться, что они являются ожидаемыми входными данными для вашего приложения.

WebGL: Начиная с версий 2019.4.25f1, 2020.3.5f1, 2021.1.2f1 и 2021.2.0a11, Application.OpenURL открывает URL-адрес в новой вкладке браузера. В предыдущих версиях Application.OpenURL открывал URL-адрес на той же вкладке браузера, что завершало работающее приложение Unity.

Android: из-за изменений безопасности в Android 7.0 (Подробнее), Application.OpenURL больше нельзя использовать для открытия локальных файлов приложения, вам нужно использовать FileProvider, который позволяет вам обмениваться файлами с другими приложениями.

iOS: Application.OpenURL нельзя использовать для открытия локальных файлов.

Пример:

using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { void Start() { Application.OpenURL("http://unity3d.com/"); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3