Я только что читал о мошенничестве с пропущенным звонком, когда с пользователя взимается плата, даже если он не перезвонил. Мне пришло в голову, что вредоносное приложение для iPhone может совершать звонки на премиальные номера, чтобы обманывать пользователей из денег - действительно, похоже, это происходило в прошлом.
Согласно собственной документации Apple :
Когда пользователь нажимает на телефонную ссылку на веб-странице, iOS отображает предупреждение, спрашивающее, действительно ли пользователь хочет набрать номер телефона, и инициирует набор, если пользователь принимает. Когда пользователь открывает URL-адрес со схемой телефонной связи в собственном приложении, iOS не отображает предупреждение и начинает набор номера без дополнительной подсказки пользователю.
Мне кажется, что, по-видимому, мягкое приложение для iPhone может, скажем, подождать, пока телефон не будет оставлен на зарядке (и, следовательно, вероятно, не посещен пользователем), а затем инициировать звонок на премиум-номер, чтобы получить разработчику чистый бонус , Похоже, что в iOS нет никаких разрешений, которые я могу изменить, чтобы предотвратить такое поведение, так как это открывает приложение для телефона с URL-адресом, а не для доступа к каким-либо данным телефона.
Может ли кто-нибудь подтвердить, правильно ли мое понимание и, если да, то почему Apple не закрыла такую зияющую дыру?
источник
Я сделал тестовое приложение, чтобы проверить это. Приложение может открывать URL, например,
tel://123456789
только когда оно находится на переднем плане и активно. Когда я вызываю этот код даже после входа в фоновое состояние, API для открытия этого URL ничего не делал. Поэтому, чтобы ответить на ваш вопрос - приложения не смогут позвонить без вашего ведома.Чтобы проверить эту вставку это в вашем
AppDelegate
:источник
При попытке инициировать вызов на iOS> = 10.3 пользователю всегда будет отображаться всплывающее окно. Документы
источник