Wifi scan vs helymeghatározás

 ( uid_7086 | 2018. április 16., hétfő - 9:15 )

Van egy Wifi analyzer nevű app a Play-en, amit egy farproc nevű fejlesztő készített.
Pár napja jött egy update, ami helymeghatározási jogot követel, meg talán bekapcsolt GPS-t is. A fejlesztő szerint ez az android hülyesége, 6.0-tól kell ez a jog a szkenneléshez.
Megnéztem a hivatkozott doksit, valóban azt írja, hogy szükség van erre a jogosultságra.
De... akkor hogy lehet, hogy több ilyen alkalmazás, köztük a farproc-féle is, működött eddig, még 7.0-s androidon is?
Egyáltalán: mi köze a wifi lekérdezésekhez (pl. környező eszközök BSSID-je, ha jól értem) a helymeghatározási joghoz?
El tudná valaki magyarázni?

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Szóval jól értem, tényleg a google spyware működéséről van szó, ez a változás csak annyi, hogy már értesít róla bizonyos esetekben?

"Until Android 6 basically any app could get the device's location without user's permission this way. In Android 6 Google tried to address this issue (in not a very good way unfortunately as explained later) by letting users know that apps with surrounding wifi network access also know the user's location. Apps that target Android 6 and later need to have the location permission to get access to the wifi network list. " ...
Egyébként használom én is, jó kis app.
--
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

Ebből engem a helymeghatározás kifejezés zavar. Ugyanis amennyire tudom, ha egy app hozzáfér a BSSID-hez, és engedélyezett számára a hálózati kommunikáció, akkor egy google API segítségével bármikor lekérheti a közelítő helyzetem, nemrég szó is volt erről itt a hupon. (Findmywifi néven érdemes keresni talán)
Amennyit megértettem a történetből, ezt továbbra sem gátolja semmi, a hálózatos kommunikáció meg továbbra is alapjoga minden appnak.
Ahogy - ha tényleg az androidos eszközökkel, a felhasználók tudta nélkül építette vagy építi most is az adatbázisát a naGytestvér - erről a dologról csak akkor értesül a user, ha külső programot telepít, maga az android folytatja tovàbbra is a maga kis játékát. (Mondom: HA igaz ez a pletyka, mert néha úgy tűnik, valójában a streetview-hoz bedolgozó autóik csinálták a wifi térképet)

Update: az viszont végképp érthetetlen, hogy miért kell még a gps-t is bekapcsolni ahhoz, hogy működjön a program.

Gondolom azért, mert önmagában egy wifi-parametereket tartalmazó adatsor nem sokat ér, sokkal értékesebb, ha mellé egyből GPS-koordinátákat is tartalmaz, sőt így egyfajta social mapping is történhet (lakóhely, állandó tartozkodasi hely, kikkel tartozkodsz huzamosabb ideig egy helyen, stb), ez kvázi egy kicsontozott, sallangok nélküli facebook...

--
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség

És akkor visszakanyarodtunk oda, hogy az android spyware funkciót erősítik, az meg csak duma, hogy a userek tájékoztatása miatt...

Arról van szó, hogy Android 7-től a MAC address lekérdezését külön kell engedélyezni, és a MAC address birtokában működik a helymeghatározás, pl. ahogy itt le van írva:

https://polarclouds.co.uk/location-via-wi-fi-mac-address/
https://www.quora.com/How-do-I-find-Location-of-a-person-using-their-WiFi-MAC-address

Mondjuk az nem egészen világos, hogy a WiFi Analyzer, ami más AP-ket scannel, kinek és hova küldi el az ÉN MAC címemet.
De a 7-esre frissítés óta az Accuweather is ezt csinálja.

Lehet, hogy valamit nagyon félreértek ebben az egészben, de továbbra sem világos, hogy a GPS device-t miért kell bekapcsolni ahhoz, hogy lekérdezzem a wifi környezetet.
A quora-s linken már jártam korábban, a polarclouds-t rögtön megnézem, csak most el kell mennem...

Szia,

Szomorú vagyok hogy nem az én wifi analyzerem használod :) , de a válaszok a kérdésedre:

* Android 6.0 és felette a wifi hálózatok (nem csak a MAC, kompletten az összes wifi hálózat), nem láthatóak az alkalmazások számára, ha az alkalmazásnak nincs location/hely engedélye _ÉS_ ha a location nincs bekapcsolva. Ezt a google tette kötelezővé azzal az engedménnyel hogy ez csak azokra az alkalmazásokra vonatkozik amik legalább 6.0-át targetálnak.

* Ha egy alkalmazás <6.0-át targetál, akkor viszont a rendszer kompatibilis módon müködik, azaz az összes wifi részlet látható location engedély és location service nélkül. Ezt használja ki most a legtöbb wifi elemzős app.

* Januárban a google hozott egy új policyt, miszerint 2018. novemberétől az összes alkalmazásnak _kötelező_ android 8-at targetálnia (sem újat feltölteni sem meglévőt frissiteni nem lehet ezután a dátum után, ha az nem targetál legalább android 8-at).

Végeredmény 1: idén novembertől az összes wifis alkalmazás location engedélyt fog kérni _ÉS_ bekapcsolt location szolgáltatást, máskülönben nem fognak müködni (nem látják a wifi hálózakat). A farproc fejlesztője gondolom már most meglépte ezt.

Végeredmény 2: az összes felhasználó az app fejlesztőket fogják szidni hogy biztos kémked utána, minek neki location, holott a google tette kötelezővé, a wifi elemző alkalmazások az égvilágon semmit nem akarnak a te helyinfóddal.

Hát ilyet mondani azok után, hogy napokig teszteltük... :D
Csak ezzel már nem akartalak zaklatni.

És részben oda akartam kilyukadni, hogy a többi vajon miért működik.
Egyébként önmagában nem zavarna a gps, de iszonyatosan megnöveli a mobilom fogyasztását, ha bekapcsolva hagyom. Így meg elég kényelmetlen a dolog.

Arról nem is beszélve, hogy épületen belül nem sok értelme van.

Szobában még működik, tovább távolodva az ablaktól már nem.
Úgyhogy a google kémközpont számára lehet értelme.

Ezért volt a smájli :)

A többi még nem targetálja a 6.0-át. De novembertől rengeteg alkalmazás fogja kérni a bekapcsolt gps-t látszólag értelmetlenül.

Akkortól fogok szépen leszokni a droidról végleg.

Fel lehet telepíteni a Wifi Analyzer Classic-ot, az nem kér GPS-t, és kb. ugyanaz.

Ha jól értem a dolgot, akkor novembertől működésképtelenné válik.

Nem. A mar playbe kerult appok tovabbra is bennmaradnak (kiveve, ha a google hoz egy ezzel ellentetes szabalyt), viszont a fejlesztoje csak ugy tud valtozatlan funkcionalitas mellett frisstest benyujtani, ha lehetoseget ker a helyzeted meghatarozasara.

---
Apple iMac 27"
áéíóöőúüű

Abszolút nem növeli önmagában a bekapcsolt bps modul a mobilod fogyasztását, feltéve h nincs olyan alkalmazás, ami használja.

Akkor biztosan van ami használja is, mert ha bekapcsolva hagyom... na jó, beszéljünk múltidőben, mert a korábbi rossz tapasztalatok miatt ezen a mobilon már csak akkor hagyom bekapcsolva, ha nagyon muszáj... szóval az előző telefonjaimon elég rendesen zabálta az áramot.
De most meg fogom nézni. Éjszakára bekapcsolom és reggel megnézem, mennyit fogyasztott.

Lehet némi igazságod, mert ha kilépek a google mapsből, akkor eltűnik a gps ikon a státusz sorból

"_ÉS_ ha a location nincs bekapcsolva"

Ez gondolom a location service, ami konfigurálható, hogy GPS alapú (is) legyen, vagy csak tippelős. Így van?

Valóban. A nagy pontosság és a csak GPS közt van egy olyan is, hogy wifi+mobil adók alapján.

OMG! Ez így de gáz.
--
https://naszta.hu

Oké, de miért?

Azért, mert az engedélykérésnek az az értelme, hogy amihez nem kell az adott funkció, letiltjuk, ha akarjuk, de az alkalmazás attól még működik. Az nincs rendben, hogy nagyjából ott tartunk, hogy ha használni akarod a telefonod, mindenhez engedély kell, ha akarod, ha nem, vagy különben dobd ki a telefont, mert levélnehezéknek jó csak.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Nade ha jól értem, akkor ez a konkrét lépés csak azokat az alkalmazásokat érinti, amik kíváncsiak a wifi hálózatok listájára (is). Ilyen alkalmazásból viszonylag kevés van, és például a tízezredik zseblámpaappnak semmi köze hozzá hogy milyen hálózatok vesznek körbe. Ha meg telepítéskor (indításkor) egyszer engedélyezni kell, hát na bumm, szerintem belefér.

Nem az a „kényelmetlenség” a probléma, hogy valamit egyszer engedélyezni kell. Ha így lenne, az egész engedélyezősdi nem kellene, minden alkalmazás hozzáférhetne mindenhez, aztán meg is vagyunk.

Ez az engedélyezős dolog a privacy igények miatt lett, de azzal, hogy agresszíven kötelezővé teszi a Google, gyakorlatilag cinikusan áthágja a privacy miatt hozott jogszabályokat. Opciók:

a) Használhatod a telefonod, lemondasz a privacy-ről, a személyes adataid feletti rendelkezésről

b) Rendelkezel a személyes adataiddal, de nem használhatod a telefonod, tehát nézegetheted, milyen szépen csillog világosban

A gond az, hogy ezzel azok pozíciója is megvan, akik kikapocsolják a telefonjukban a GPS-t.

Szeremcsére nincs és egyelőre nagyon úgy tűnik, hogy nem is lesz okostelefonom.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Mi az, hogy kötelező? Mondhatsz nemet és akkor nem adsz engedélyt az appnak. Csomó eset van, amikor a szükséges engedélyek alapján választok appot egy adott célra, és olyan is, amikor egy appnak néhány engedélyt megadok, néhányat meg nem.

A wifi listából majdnem GPS pontossággal kiderül az ember pozíciója. Teljesen jogos, hogy pozíció engedély nélkül wifi listát nem engednek olvasni, különben nem lenne értelme az engedélynek, ha ilyen könnyű áthágni.

Szerinted mit kellene máshogy csinálni az Androidnak?

Mondhatsz nemet, de akkor - ahogy írták - novembertől nem használhatsz olyan alkalmazást, amely használ wifi listát. Mi köze a GPS-nek a wifi-hez? Semmi, már azon túl, hogy a Google szeretné, hogy a hotspot-ok helye meglegyen, s ezen keresztül a kikapcsolt GPS-szel használt telefonok helye is.

Teljesen jogos, hogy pozíció engedély nélkül wifi listát nem engednek olvasni, különben nem lenne értelme az engedélynek, ha ilyen könnyű áthágni.

Ezt nem értem. Miért is jogos? Semmi összefüggés a wifi és a GPS között. Ha lehullana az égről az összes GPS műhold, wifi-t ugyanúgy lehetne használni továbbra is.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Ertsd mar meg, hogy az egesznek semmi, de semmi koze nincs a GPS-hez.

A keszulek poziciojat visszaado szolgaltatashoz van koze, ami ilyen-olyan korulmenyek kozepette, hasznalhat akar GPS-t, akar GLONASS-t, akar valamilyen mobilhalozathoz kotheto dolog (GSM/CDMA/UMTS/LTE/stb) vagy akar WiFi is (ezt reszben tudod korlatozni a keszuleked beallitasaiban, reszben az app fejlesztoje tud erre rahatassal lenni, annak fuggvenyeben, hogy mekkora pontos koordinatat kervenyez az API-tol). Tehat ez a lokacios szolgaltatasokhoz valo engedelykeres es nem kimondottan a GPS-hez.
A problema/privacy pedig abbol fakad, hogy aki hozzafer az eszkoz alltal elerheto WiFi halozatok listajahoz valamint a veteli jelszintekhez, az tulajdonkeppen akkor is meg tudja hatarozni, hogy hol a keszulek ha nem kert hozzaferest a lokacios szolgaltatashoz. Nyilvan erkezett a googlehoz privacyt erinto panasz ezugyben es a legegyszerubb megoldas az volt, hogy hozzacsaptak a WiFi halozatok listajanak elerhetoseget azon API hivasok korehez, amikhez engedelyt kell kerni a lokacios szolgaltatasok hasznalatahoz (tehat, nem kimondottan a GPS-hez).

szerk: A november pedig nem azt jelenti, hogy novemberben huss, ez meg fog allni, hanem azt, hogy a fejlesztotol meg lesz kovetleve, hogy cel API verzionak az API Level 26 legyen kivalasztva (https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html). Viszont API Level 23 eseten (es termeszetesen felette) engedelyt kell kerni a felhasznalotol a lokacios szerviz hasznalatahoz. Tehat, egy soha tobbet nem frissitett app valoszinuleg az idok vegezeteig mukodni fog (ameddig az adott apilevel tamogatott a frissebb rendszereken).

---
Apple iMac 27"
áéíóöőúüű

Érdekes a magyarázatod, de tulajdonképpen logikus. Viszont tágra nyitja a kaput a visszaélésre: ha már hozzájárult ahhoz a felhasználó, hogy meglegyenek a wifi adatok, s ebből előállítható a hely - bár nem biztos, hogy ez triviális -, akkor egyúttal ahhoz is hozzájárul a felhasználó, hogy a sokkal pontosabb GPS is használva legyen.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

Nem igaz az az állításod, hogy a GPS sokkal pontosabb. Egy wifi listából már kb. utca+házszám szinten megvan, merre vagy (kivéve, ha épp egy sivatag közepén vagy, vagy nincs internet hozzáférésed), ettől a GPS nem sokkal jobb, privacy szempontjából lényegtelen. Sőt, az emberek nagy része rengeteg időt tölt házon belül, irodában, ahol sokszor nincs is GPS, és a wifi a sokkal pontosabb. Ha nem hiszed, próbáld ki a laptopodon a helymeghatározást GPS nélkül, megtalálja-e a házadat.

Ezek után mi értelme lett volna két külön joghoz kötni a wifi listát és a GPS-t? Hol ez pontosabb, hol az. És a UX-esek fő célja nem az, hogy fórumokon mérgelődő 1-2 ember boldog legyen, hanem a júzerek többsége boldog legyen.

Ha eltavolodsz az ablaktol kb 2-3 metert, a GPS mar nem fog tudni lockolni, igy GPS iranybol nem lesz poziciod, ebben az esetben a lokacios szolgaltatas a telefonodon sem a GPS-re fog tamaszkodni.

---
Apple iMac 27"
áéíóöőúüű

Nem. Androidon ketfele helyzetmeghatarozas van, ket kulonbozo joggal (coarse location meg precise location asszem). Ha reklam miatt kell egy kb. hely, akkor az elsot szoktak hasznalni, ez akkukimelo is. GPS-hez az utobbi kell, pontosabb, de kulon hw-t kapcsol be, ami tobbet hasznalja az akkut.
Egyebkent a pontatlanabbrol (meg az adatgyujtesrol) leiratkozhatsz (sot, ha jol emlekszem, opt-in), ebben az esetben persze nem fogod tudni hasznalni.
Ez a wifi-s jogosultsagvaltozas arrol szol, hogy ha olyan infot kerdezel le, amivel meghatarozhato a helyzeted, akkor jog is kelljen hozza. Raadasul visszafele kompatibilis (3rd party store-okra meg hatasa sincs).

--
Any A.I. smart enough to pass a Turing test is smart enough to know to fail it. -Ian McDonald

Jó, így már világos.


tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE

+1

Nem. Az engedélykérésnek annyi az értelme, hogy dönthetsz: megadod-e a kért engedélyt. Az app meg eldönti, hogy engedély hiányában működőképes marad-e.
Itt viszont két, egymástól elvben független dolgot kapcsolnak össze. (szép is lenne, ha pl. a horst csak akkor működne, ha lenne gps a laptopban...)

Azért, mert a szabály megalkotása során nem a user privacy érdeke (külön jog a wifihez és a GPS-hez) érvényesült, hanem az, hogy a G appok könnyebben tudják hazaküldeni a wifi és GPS adatokat. Gáz.
--
https://naszta.hu

Nagyjából ez a lényege. De meg kell hagyni a Google egész zseniális, úgy szerzi meg az összes adatát a felhasználóknak hogy eközben a felhasználó az alkalmazás fejlesztőt vádolja ezzel.

Itt a szép megoldás az lett volna, hogy location nélkül a wifi listából kiüti a bssid-t. Igy a wifi elemzők is szépen müködhetnének tovább (hisz az esetek 99%-ban senkit nem érdekel a panelben hogy a másik 99 wifi hálózatnak mi a bssid-ja, az érdekel hogy melyik csatornán mennyi és milyen erősségü van) és a privacy sem sérülne.

És sajnos ez csak a jéghegy csúcsa. Ha berakod az appba a google firebase-t, ami a hivatalos módja hogy reklámot jelenits meg az appban és amit a google készit, az berántja magával automatikusan többek közt a következő engedélyeket:
android.permission.READ_PHONE_STATE
android.permission.READ_EXTERNAL_STORAGE
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.WAKE_LOCK

És aztán megint csak jön a felhasználó, hogy minek egy zseblámpának ilyen engedélyek biztos vissza akar élni vele... Hát nem, csupán csak reklám jelenik meg benne és google ennyi engedélyt kényszerít ki. Ezekkel az engedélyekkel a google hozzáfér az összes készülékazonosítóhoz, a telefonszámodhoz, az összes fényképedhez vagy akármilyen más fájlhoz a telefonodon. És még mindig csak egy zseblámpa komplexitású appról beszélünk, aminek annyi a büne hogy reklámot jelenít meg.

És végül mindennek megkoronázása, hogy a google arra kényszeríti az app fejlesztőket, hogy a "READ_PHONE_STATE" engedély miatt nyújtsanak be adatvédelmi irányelvet arról hogy mire akarják használni az igy megszerzett adatokat, magyarán nyilatkozzanak arról az engedélyről, amire egyébként az appnak semmi szüksége sokkal inkább a google használja fel.

Magam részéről csodálkozok hogy ezekből még semmi ügy nem lett amerikában, mert amit a google csinál ahhoz képest a facebook csak zöldfülü tanuló.

https://developers.google.com/android/guides/releases#march_28_2018_-_version_1201

De kezdem érteni. Szóval arról van szó, hogy azokon a telefonokon, amiken Android fut, de nincs Google szolgáltatás, azokon (is) tudjon kémkedni a Google?

Mert egyébként nem értem; ha van rajta pl. egy Play Store, akkor már nem hiszem hogy lenne bármi olyasmi, amit ne tudna a Google ha akarna.

Tehát ha nem akarsz reklámot megjeleníteni (mert az app-ért mondjuk elkérsz pár dolcsit), akkor szépen elvan ilyen jogok nélkül, ha viszont ingyér' adod, és a reklámokból akarsz némi zsetonhoz jutni, akkor meg kell.

Gyönyörű látni, hogyan születnek az összeesküvéselméletek.

A szép wifis megoldásodról annyit, hogy rögtön elcrashel tőle az összes app, ami BSSID alapján indexeli valami hashmap-ben az AP-kat, másrészt az AP egyéb adataiból ugyanúgy lehetne adatbázist építeni (esetleg kissé kevésbé lenne pontos, de nézd már meg, mennyire hosszú és egyedi neve van a körülötted levő AP-knak, és számold ki, 10 AP együttállásából hány csillió kombináció áll elő, és mennyi az esélye, hogy a világ két eltérő pontján ismétlődik ugyanaz).

Rákerestem a READ_PHONE_STATE-re, látszik, hogy másoknak is feltűnt, elismerték bugnak, és hamar javították. Ezzel szemben szerinted valószínűbb az, hogy valami főnök (kicsoda?) leszól egy mérnöknek (mert ő maga mégse fog kódot írogatni), hogy tegyen bele egy véletlen hibának látszó kémkedő kódot a Firebase-be, plusz építsenek ki neki egy backendet, ami gyűjti az adatokat? És ezekből az adatokból mi is derülne ki pontosan?

Ha nem a Google-ról és nem ennyire személyes eszközről lenne szó, elismerném, hogy igazad van és ez is csak egy a sok konteós elmélet közül. Így azért nem merném határozottan kijelenteni. Pláne egy olyan világban, ahol a nyomorult tévé is kémkedik(Samsung, ha jól emlékszem) és egy androidos backup szoftver(fura, ez js samsung) a mikrofont buzerálná... más kérdés, hogy ha az op.rendszer egyébként is hozzáfér mindehhez, akkor a G-nek mi szüksége rá, hogy ilyen engedélyeket kikényszerítsen.
Bízzunk benne, hogy tényleg bug és nem csak arról van szó, hogy "BOSZORKÁÁÁÁNY! A fene egye meg, lebuktam..." és ki kellett találni valami hihető magyarázatot :)

A "szép megoldás"-t nem tudom, hogy képzelte a költő, ötleteim lennének, de így belegondolva tényleg nem tűnik jónak, de kivitelezhetetlennek sem (null helyett egy sorszámot ad vissza -> kérdés, hogy a bssid - sorszám párt tartalmazó tábla, ami alapján azonos bssid azonos sorszámot kap valameddig, mikor törölhető)

Engedd meg hogy válaszoljak, valószinüleg nem fejlesztesz androidra.

1, Semmi akadálya nem lett volna hogy a bssid csupa nulla (00-00-00...) legyen location perm. nélkül. Tökéletesen müködik, a google ugyanezt meglépte a telefon mac-je esetén, és azt még csak nem is kompatibilis módon, androidon 8.0-án tökmindegy mit targetálsz, ha nincs location engedélyed, a mac csupa nulla lesz. (ebből következőleg a nem frissitett appok is csak limitációkkal fognak tudni müködni, esetleg elcrashelnek ha erre komolyabban építenek).

2, ha magasabb skd-t targetálsz, akkor úgy is hozzá kell nyúlnod a kódhoz, mert a location veszélyes engedélynek minősül és futásidőben be kell kérned + ellenörizni hogy megkaptad-e. Ha ezt nem teszed, akkor igy is úgy is elcrashel az alkalmazásod egy szép securityexception keretében. Innentől kezdve már csak plusz egy lépés megnézni a dokumentációt, hogy ó igen és a bssid is csupa nulla ez esetben, hát akkor arra nem építhetek kódlogikát.

3, végtelenségig nem érdemes vinni a privacy-t (lásd ap neve, de amúgy azt is simán lehet randomizálni, pl. első 5 karakter + random szám), egy csomó más mindenből is építhetek adatbázist, pl whatismyip aztán bumm máris megvan az ország, megpingeteg pár szervert a latency-ből is tudok következtetni, megnézem a telefon nyelvét és ezeket összeadom. És ezekhez elég sima mezei internet elérés engedély, amit az appok 99%-a birtokol. A lényeg, hogyha a felhasználó pontos helyére vagyok kiváncsi akkor a gps mellet csak és kizárólat bssid jöhet szóba, ha meg csak úgy nagyjából, akkor meg ezer más módja is van.

READ_PHONE_STATE:
évek óta ismert dolog, és a google füle botját sem mozgatta. Pedig ez egy igen komoly privacy issue, hisz ennek birtokában az appok legálisan férnek hozzá a készülékazonosítókhoz és legálisan mutogatnak a google-re. Ráadásul ezt az engedélyt maga a google is a "veszélyes" engedélyek közé sorolja.
Gyorsan javitotta... a hiba 2016 május-ban jött be, 2018. márciusában javították végleg (már ha most már sikerült nekik). Persze ki hogy értelmezi a gyorsant, lehet nálatok ez számít gyors hibajavításnak, akkor nem szóltam :)

Más:
Szerintem minden szoftverfejlesztő mérnök tisztában van vele, hogyha azt szeretné hogy a szoftver valami kevésbé legálisat csináljon, akkor nincs más dolga mint ráfogni egy bugra. "Ó nézd csak kikapcsoltad az adatgyüjtést és mégis gyüjti az adatokat tovább. Hát biztos valami fránya bug..."
Az hogy a READ_PHONE_STATE engedély átment a kód reviewen (feltételezem a google-nél van ilyen), átment a belső tesztelésen, sok mindent jelenthet, leginkább azt hogy ez tervezett volt. Ez nem olyan eset hogy nap-hold együttálláskor 10 évente egyszer ha a kertben egy fehér kecske legel, akkor elcrashel az app, mert erre nincs felkészítve és senki nem vette észre. Amikor meg kiderül, rá lehet mondani hogy bug.

És mostanában túl sok ilyen "bug" van, beszéljünk akár a Microsoftról (win 10 kikapcsolhatatlan adatgyüjtése ugyebár), akár a Facebookról (lásd ugye Cambridge analytika) akár a Google-ről.

Amit fejesjoco írt, abban van valami: ha BSSID alapon indexelsz, akkor mind1, hogy null vagy 00-* a visszaadott érték, egyformán hülyeséget csinál, mert az összes ap azonos "bssid"-vel látszik.

Nem indexálhatsz bssid alapon, ha nincs location permission, ez ilyen egyszerü. Ahogy mondtam a MAC cím már most is csupa nulla, ha az alapján akarod megmondani hogy ki a gyártó, szintén lyukra futsz.

De ez sokkal kevésbé fáj a felhasználóknak, mint az hogy location engedély és futó location szolgáltatás kell egy wifi elemzőnek. Nem is értik hogy mi köze a kettőnek egymáshoz.

Még te sem értetted, hisz ezért született ez a topic. Márpedig ha a hupon nem értik, akkor gondolhatod hogy a felhasználók 99%-a mennyire érti.

Nem a saját bssid-ről beszélünk, hanem a környezetben lévőkről. Hasonlattal élve, lásd primary key definíciója pl. Oracle-ben ;)

Én most sem értem igazán, hogy azért, mert valamit, eredeti funkciójától eltérő célra lehet használni, azt miért kell olyan szolgáltatáshoz kötni, ami az eltérő funkcióról szól.

A BSSID-k listája, hála a google "áldásos" ténykedésének, felhasználható helymeghatározásra is, ahogy egyébként a mobil tornyok azonosítói és egyéb adatai is. Ettől még ez nem helymeghatározásra szolgáló funkció, le kellett volna választani róla.
Ugyanis az elsődleges felháborodás a farproc alatt is abból van, hogy helymeghatározási jogokat kér az app, nem abból, hogy egy plusz jogosultság kell neki.
Aki nem tudja, hogy a wifi környezet felmérése lehetőséget ad a helyzetének meghatározására, az talán kicsi eséllyel fog foglalkozni vele akkor is, ha helymeghatározási jogokat kér egy ilyen app. Szerintem.
És akkor még ott van az a plusz, engem mégis zavaró apróság, hogy miért kell bekapcsolni a helymeghatározási szolgáltatást ilyen esetben, hiszen magát a szolgáltatást nem használja az app.

Ezért lenne az én általam javasolt megoldás jobb.

A bssid, (én is a könrnyezetben lévőkről beszéltem) csak a funkciók kb. 10%-hoz kell egy wifi elemzőben. Az hogy hány wifi hálózat van körülötted, melyik csatornán, milyen jelerősséggel, hány okoz interferenciát és mennyire stb, enélkül is megy. a bssid gyakorlatilag csak akkor kell ha ez alapján akarsz szürni.
Az én általam vázolt megoldásban, a wifi elemző funkcióinak 90%-át használni tudnád bármiféle location nélkül, és ha kell a maradék 10% is, akkor megadod neki az engedélyt és csak akkor amikor azt az al-funkciót igénybe akarod venni.

Ehhez képest a google megoldása mindent vagy semmit alapon müködik, vagy megadod az engedélyt és bekapcsolod a locationt, vagy nem és akkor kb. használhatatlan lesz az app. Ennek igy semmi értelme, ráadásul ha megadod az engedélyt, akkor az app tényleg hozzáfér a poziciódhoz, és immáron nem kell bóhockodnia a wifivel sem, hisz akár GPS pontossággal meglesz neki.

Az már csak hab a tortán amit irsz, hogy pont a google gyüjtötte össze a bssid-ket ráadásul törvénytelenül a legtöbb országban.

fejesjoco
"Mennyi ideig lehetne titokban tartani egy szándékosan illegális adatgyűjtést? "

Nem tartották titokban de nem is publikálták. Ezért mondtam hogy vszinüleg tervezett volt. Ellenben amikor elkezdett égi a talpuk alatt a talaj, akkor bugként kezelték és javították. A facebook ugyanezt csinálja (csinálta).
Ezért mondtam hogy manapság ez a nagy divat, csináljuk a (fél) illegális tevékenységet, nem titkoljuk de nem is olvashatsz róla az aszf-ben, majd ha valaki észreveszi és már nagyon veri a tam-tam dobot, akkor ráfogjuk hogy bug és javítjuk.
Csak a facebook most rákef.lt, mert pont az amerikai elnökválasztásban lett felhasználva az igy megszerzett adat ami náluk egy neurologikus pont.

Nehéz fejű vagyok. Mi az összefüggés aközött hogy én begyűjthetem a környező AP-k BSSID-jeit, és aközött, hogy az én egyik appom felhasználhatja ezeket valamire? És miért nem tudom elválasztani az ennek alapján történő helymeghatározást a GPS-től? Lehet, hogy már el lett itt magyarázva, akkor elnézést, de nem jött át világosan.

Te csak a saját környezetedről tudsz adatot gyűjteni. Az app, ami "hazabeszél", az egész világról. Vagy nem erre gondoltál?

A READ_PHONE_STATE gyors javítása alatt erre gondoltam: https://github.com/firebase/quickstart-unity/issues/68 . Ez volt az első találat, nem követtem végig hogy hol máshol volt jelezve és mennyi ideig tartott.

Nézd meg, hány tízezer mérnök dolgozik a Google-nél, és milyen szintű leak-ek jönnek ki mostanában. Mennyi ideig lehetne titokban tartani egy szándékosan illegális adatgyűjtést? Nézd meg csak a legutóbbi Project Maven-es dolgot, hogy mennyi önérzetes emberke van ott.

Főleg azért nincs szükség illegális adatgyűjtésre, mert létezik nyíltan, legálisan is. A Facebook pl. direkt arról szól, hogy az ember önként feltölt mindent magáról (az az egy dolog tényleg el van baszva, hogy a Facebook 3rd party appoknak ad át adatokat, de erről szól a social, és legalább ez most már opt-in).

sub