0
<< предыдущая заметкаследующая заметка >>
24 июля 2020
Кто-нибудь разбирается в политике Android/Cordova?

UPD: Вопрос решен, спасибо умным людям: Igor Podlesny, SergeyBarvinenko, Sergey Batishchev. Как я и надеялся, у Андроида осталась опция, которую можно указать, чтобы приложение все еще могло работать с http. Подробности: https://stackoverflow.com/a/54752717 и
https://stackoverflow.com/questions/54752716/why-am-i-seeing[...]

Магия состоит в том, чтобы добавить в config.xml некоторые магические заклинания. Тэг widget должен стать таким:

<?php<widget id="me.lleo.yestarday4duk"version="1.0.0"xmlns="http://www.w3.org/ns/widgets"xmlns:android="http://schemas.android.com/apk/res/android".xmlns:cdv="http://cordova.apache.org/ns/1.0">

Ранее там было: xmlns=«http://www.w3.org/ns/widgets» xmlns:cdv=«http://cordova.apache.org/ns/1.0"

А в секцию

<?php<platform name="android">
следует добавить:
<?php<edit-config file="app/src/main/AndroidManifest.xml"mode="merge"target="/manifest/application">

<application android:usesCleartextTraffic="true"/>
</
edit-config>

БЫЛО:

Блять, стоило мне отвлечься на пару лет и установить заново весь софт с Андроид-студией на eka-ноутбук, как там опять что-то поменялось в политиках! Теперь собираю приложение, и оно отказывается работать с любыми внешними источниками данных (от mp3 и вебрадио до Ajax/XHR), если ссылка http, а не https. С https все работает как прежде, а вот http, похоже, теперь запрещен. Они не охуели ли требовать от мира шифровать публичные аудиопотоки, например? Кому это полезно, тратить лишние киловатты, мегабайты и процессорные силы по обе стороны соединения, чтобы шифровать данные, которые публичны для всех? А если я хочу написать приложение, чтобы в нем звучал, допустим, поток вещания из источника, у которого не имеется https-ссылки? Или приложению во время работы надо бегать за табличными данными на некие чужие сайты или даже устройства, где нет и никогда не было https, и даже самой технической возможности SSL не предусмотрено?

Где это и в каких политиках можно включить снова?

В index.html пробовал прописывать и так:

<?php<meta http-equiv="Content-Security-Policy"content="default-src 'self'; script-src 'self' 'unsafe-eval'; style-src 'self' 'unsafe-inline'; child-src *; img-src *; font-src 'self' data:; media-src *; connect-src *;">

И так:

<?php<meta http-equiv="Content-Security-Policy"content="default-src *;      script-src 'self' 'unsafe-inline' 'unsafe-eval';  style-src 'self' 'unsafe-inline'; ">

В config.xml в полях cordova-plugin-whitelist тоже все разрешения имеются:

<?php<plugin name="cordova-plugin-whitelist"spec="1"/>

<access origin="*"/>

<allow-intent href="*"/>

<allow-intent href="http://*/*"/>

<allow-intent href="https://*/*"/>

В чем проблема? Где и когда Google или Cordove сменили правила игры относительно http?

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок

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

Оставить комментарий