Гоогле прети да ће уклонити апликације са услугама приступачности из Плаи продавнице

Гоогле шаље имејлове са упозорењем програмерима да не користе услуге приступачности ван предвиђене употребе или ће њихове апликације бити уклоњене из Плаи продавнице.

ажурирање: ЛастПасс има управо одговорио на ове вести и наводи да неће бити „тренутног утицаја“ за њихове Андроид апликације. Остаје да се види да ли то значи да ће друге апликације бити блаже или не.

Неке од најиновативнијих апликација у Плаи продавници су изграђене на коришћењу АПИ-ја на начине које Гоогле никада није намеравао. Постоје апликације које могу да поново мапирају ваше тастере за јачину звука да прескачу музичке нумере, снимају и репродукују додирне уносе на веб странице или игре, па чак и обезбедите алтернативне тастере за навигацију како бисте могли да користите свој уређај у целини екран. Сви ови примери које сам управо поменуо ослањају се на Андроид-ове АПИ-је приступачности. Али то може ускоро промените, јер тим Гоогле Плаи продавнице шаље е-поруке програмерима у којима им говори да могу више не примењују услуге приступачности осим ако не прате Гоогле-ове смернице.


Шта је услуга приступачности?

Да бисмо разумели зашто је ово значајно, прво морамо да објаснимо шта је Приступачност у односу на Андроид. Уопштено говорећи, приступачност се односи на то да Андроид апликацију учините доступнијом корисницима са одређеним инвалидитетом, као што су они са оштећеним видом. Иако је у најбољем интересу сваког програмера да своје апликације учине доступнијим корисницима са инвалидитетом, постоје посебна класа апликација које су дизајниране да побољшају употребљивост свих Андроид апликација за кориснике са инвалидности. Оне се зову услуге приступачности.

Услуга приступачности, која се обично назива а11и, је апликација којој систем може унети одређене информације у зависности од тога шта догађаји Услуга приступачности се региструје за слушање. Апликација која жели да примени услугу приступачности мора да дода android.permission.BIND_ACCESSIBILITY_SERVICE дозволу за АндроидМанифест датотеку тако да само систем може да се повеже са услугом апликације.

На пример, ако је услуга приступачности направљена да слуша TYPE_VIEW_CLICKED догађаја, тада ће та услуга од система добити информације о свим дугмадима које корисник може да притисне. Услуга приступачности такође може да реагује и користи одређене покрете и КеиЕвентс пре него што их друге апликације приме. Коначно, услуга приступачности такође може да убаци одређене кључне догађаје као што су дугме за повратак, подељени екран или недавне апликације.

Дакле, услуге приступачности могу бити изузетно моћан и користан. Неколико најпопуларнијих, иновативних апликација у Гоогле Плаи продавници ослањају се на а11и да обавља своје дужности. Ево само неких од неколико примера које сам смислио из главе:

  • АутоИнпут - пресретните КеиЕвентс и извршите покрете додиром/превлачењем
  • Буттон Маппер - пресрести КеиЕвентс и поново их мапирати на друге КеиЕвентс
  • Греенифи - аутоматски хибернирајте апликације тако што ћете их присилно затворити пре него што се екран искључи
  • Унос+ - откријте када је апликација за тастатуру отворена да прикаже плутајуће дугме за акцију
  • ЛастПасс - скенирајте странице за уносе корисничког имена/лозинке (неопходно пре Андроид Орео-а)
  • Свифтли Свитцх - пошаљите КеиЕвент за дугме за назад
  • Таскер - откријте када су апликације отворене да бисте могли да извршите било коју радњу коју дефинише корисник
  • Тип Мацхине - снимите сав унос текста тако да никада нећете изгубити ниједан унос текста

Ниједна од ових апликација не користи а11и на начин на који је Гоогле намеравао, а то је да помогне корисницима са инвалидитетом. Кладим се да велика већина апликација које имплементирају услугу приступачности то ради за функције изван Гоогле-овог делокруга. Али то је лепота Андроид-а и АПИ-ја као што је Приступачност – Гоогле обично не ограничава шта програмери могу, а шта не могу да ураде. Међутим, изгледа да се тај олабављен приступ са коришћењем услуга приступачности мења са Гоогле Плаи-ом Тим продавнице је слао е-поруке програмерима упозоравајући их на предстојеће промене њихове политике у вези а11и.


Шта тачно Гоогле ради?

Компанија обавештава програмере да ако њихова апликација користи услугу приступачности из било ког разлога осим пружања помоћи корисницима са инвалидитетом, онда морају да уклоне коришћење ове дозволе у ​​року од 30 дана или ће њихова апликација бити уклоњена из Плаи продавнице. Непоштовање овог захтева може довести до повреде налога Плаи продавнице програмера, што може на крају довести до гашења налога.

За неколико апликација које користе а11и за помоћ корисницима са инвалидитетом, Гоогле наводи да ови програмери морају једноставно да додају истакнуто, окренуто кориснику, откривање разлога зашто је њиховој апликацији потребан дозволу. Међутим, као што сам раније поменуо, услуге приступачности се много чешће користе у апликацијама које би на крају прекршиле ову нову политику.

Комплетан емаил послат програмерима

Здраво програмери на ****,

Контактирамо вас јер ваша апликација, ****, са називом пакета **** захтева „андроид.пермиссион. БИНД_АЦЦЕССИБИЛИТИ_СЕРВИЦЕ.' Апликације које захтевају услуге приступачности треба да се користе само да помогну корисницима са инвалидитетом да користе Андроид уређаје и апликације. Ваша апликација мора бити у складу са нашим Дозволе политика и захтеви за истакнуто обелодањивање наше Кориснички подаци политика.

Мере потребне: Ако то већ не радите, морате да објасните корисницима како ваша апликација користи „андроид.пермиссион. БИНД_АЦЦЕССИБИЛИТИ_СЕРВИЦЕ' да помогне корисницима са инвалидитетом да користе Андроид уређаје и апликације. Апликације које не испуне овај захтев у року од 30 дана могу да буду уклоњене са Гоогле Плаи-а. Алтернативно, можете уклонити све захтеве за услуге приступачности у оквиру своје апликације. Такође можете да опозовете објављивање апликације.

Ако треба да унесете промене у своје апликације, следите ове кораке:

  • Прочитајте кроз Дозволе и Кориснички подаци смернице за више детаља и уверите се да је ваша апликација у складу са свим смерницама наведеним у Смернице програма за програмере.
  • Ако вам није потребна дозвола БИНД_АЦЦЕССИБИЛИТИ_СЕРВИЦЕ у вашој апликацији или се дозвола користи за нешто друго осим за помоћ корисницима са инвалидитетом да користе Андроид уређаје и апликације:
    1. Уклоните захтев за ову дозволу из манифеста апликације.
    2. Пријавите се на Плаи конзолу и отпремите измењени АПК у складу са смерницама.
  • Или, ако вам је потребна дозвола БИНД_АЦЦЕССИБИЛИТИ_СЕРВИЦЕ у вашој апликацији да бисте помогли корисницима са инвалидитетом да користе Андроид уређаје и апликације:
    1. Укључите следећи исечак у опис уноса у продавници своје апликације: „Ова апликација користи услуге приступачности.“
    2. Обезбедите уочљиво откривање ове употребе усмерено на корисника пре него што затражите од корисника да омогући ову дозволу у вашој апликацији. Ваше откривање мора да испуни сваки од следећих услова:
      • Откривање мора бити обезбеђено путем андроид: резиме и андроид: опис елементи класе АццессибилитиСервицеИнфо
      • Откривање мора да описује функционалност коју дозвола услуге приступачности омогућава за вашу апликацију. Свака функција која се користи са захтевом за услугу приступачности мора бити наведена у вашем откривању са оправдањем.

Алтернативно, можете изабрати да опозовете објављивање апликације.

Сва кршења се прате. Озбиљна или поновљена кршења било које природе ће довести до укидања вашег налога програмера, истраге и могућег укидања повезаних Гоогле налога.

Ако сте прегледали смернице и сматрате да смо можда погрешили, обратите се нашем тим за подршку политици. Један од мојих колега ће вам се јавити у року од 2 радна дана.

Поздрави,

Тим за преглед Гоогле Плаи-а

Опширније


Зашто Гоогле уклања услуге приступачности из Плаи продавнице?

Док су коришћење услуга приступачности познато да изазива прилично мало заостајања, прави разлог зашто Гугл почиње да се обрачунава са овим апликацијама вероватно је повезан са све већим проблемом експлоатација које користе предности а11и. Иако апликације које сам поменуо горе користе а11и у корисне сврхе, злонамерни програмери их лако могу искористити у зле сврхе. На пример, услуга приступачности може се користити за имплементацију кеилоггер-а, напада рансомваре-а или пхисхинг експлоатације.

Гоогле-ови напори да заштити кориснике од злонамерних услуга приступачности углавном су се вртели око откривања. Тренутно, омогућавање услуге приступачности која се региструје за одређене догађаје као што је TYPE_VIEW_TEXT_CHANGED ће резултирати дијалогом упозорења да апликација може украсти ваше лозинке. Можда мислите да би таква порука била ефикасна у спречавању корисника да неодговорно додељују апликације а11и. Међутим, било је много документованих случајева да апликације преваре кориснике да дају а11и. Неки напади иду и даље, као нпр Плашт и бодеж искоришћавају и Тоаст Мессаге Оверлаи напади који друштвеним инжењерингом корисника додељују а11и лажним представљањем онога са чиме комуницирају на екрану.

Напади попут ових су ефикасни на великој већини Андроид уређаја. Гоогле је направио велике кораке у спречавању напада на преклапање или тост поруке (као што се може видети у АОСП-у ако тражите а11и), али ствари су дошле до тачке када је Гоогле одлучио да је боље да ограничи употребу услуга приступачности у потпуности. Има смисла, али тако стварно срање јер ће овај потез убити функционалност многих иновативних апликација.


Шта програмери могу да ураде?

Нажалост, тамо програмери не могу много да ураде као одговор на ове промене. Програмери могу или да се повинују Гоогле-овим захтевима уклањањем своје услуге приступачности или се суоче са претњом да ће њихова апликација бити уклоњена и њихов налог евентуално угашен. Једноставно додавање откривања зашто њихова апликација користи а11и функционисало би само ако је њихова апликација легитимно усмерена на помоћ корисницима са инвалидитетом, што не описује већину апликација које тренутно користе а11и.

Рефакторисање апликација да више не користе услугу приступачности могуће је за неке, али не све, од апликација које смо поменули. Менаџери лозинки као што је ЛастПасс могу пређите на оквир за аутоматско попуњавање, али само ако корисник користи Андроид 8.0 Орео и новији. Ако апликација користи а11и за надгледање када су друге апликације отворене, та апликација се уместо тога може написати помоћу услуге анкетирања користећи УсагеСтатс АПИ. Апликације као што је Таскер могу преживети такву промену. Други као што су Буттон Маппер и АутоИнпут немају среће — без роот-а, нема доброг начина да се пресретну КеиЕвентс.

Иако препознајемо опасност у допуштању злонамерној апликацији приступ АПИ-јима приступачности, штета је видети неке заиста корисне апликације које Гоогле стерилише. Надамо се да је политика коју је Гоогле поставио обрнута, или једноставно тврде да је погрешно протумачена. Како сада стоји, формулација у имејлу је прилично јасна — придржавајте се наших смерница или изађите из Плаи продавнице. То је суморни подсетник да Гоогле има сву моћ апликација које припадају у Плаи продавници и да могу да извуку тепих испод вас у било ком тренутку.


Ажурирање 1: збуњујућа документација за програмере

Гоогле-ови програмски документи за изградња услуге приступачности изгледа да је у супротности са овим новим фокусом тима Гоогле Плаи продавнице. Страница има следећу формулацију у време писања овог текста:

Услуга приступачности је апликација која пружа побољшања корисничког интерфејса како би се помогло корисницима са инвалидитетом или који привремено не могу да остваре потпуну интеракцију са уређајем. На пример, корисницима који возе, брину о малом детету или присуствују веома гласној забави можда ће бити потребне додатне или алтернативне повратне информације о интерфејсу.

Штавише, ако упоредите текст на страници са архивирана верзија странице из јула, видећете да напомена о изградњи услуга приступачности само за помоћ корисницима са инвалидитетом не постоји.

Хвала Жоао Дијасу што нам се јавио са овом информацијом.