A Scoped Storage-nak köszönhetően az Android 11 bizonyos eszközökön kissé kényelmetlenné teszi a képek törlését a Google Fotókban, de lehet, hogy van valami javítás.
Nem tudhatjuk, hogy a Google óta hány készüléken fut Android 11 a piacon már nem tesz közzé terjesztési statisztikákat, de valószínűleg több tízmillióan vannak olyan cégek, mint a Xiaomi és a Samsung, akiknek volt idejük a frissítést a sok modelljüket. Ha eszközén Android 11 fut, és a Google Fotókat használja, akkor előfordulhat, hogy meglehetősen bosszantó változást tapasztalt az alkalmazás képtörlési és -helyreállítási módjában. Ahelyett, hogy egyszerűen kiválasztaná a törölni kívánt képeket és videókat, koppintson a kuka ikonra, majd koppintson az "áthelyezés" gombra. a kukába” gombot, akkor most egy további felszólítást kell végrehajtania, hogy engedélyt adjon a Google Fotóknak, hogy törölje vagy visszaállítsa fájlokat.
Azok számára, akik sok fényképet és videót készítenek, bosszantó lehet, ha engedélyt kell adnia a Google Fotóknak egy fájl törléséhez vagy visszaállításához. És ahogy rámutatott
AndroidPolice, akkor nem csak egy plusz gomb megérintése az egyetlen probléma, amellyel meg kell küzdenie. Ha egy másik eszközön használja a Google Fotókat, és szerkeszteni vagy kukába szeretne tenni egy fájlt, amelyet Android 11 rendszert futtató telefonjáról töltött fel, az alkalmazás kérheti, hogy tekintse át a „szinkronon kívüli módosításokat”. Ez gyorsan bosszantóvá válhat, ha a Google Fotók folyamatosan arra kéri Önt, hogy tekintse át a másik platformon végzett módosításait.A fájl törléséhez vagy visszaállításához szükséges extra lépésre nem volt szükség az Android 10-ben, de az Android 11-ben már szükséges a hatályos tárhely betartatása miatt. A Scoped Storage előtt a teljes külső tárolókönyvtárhoz való hozzáférést egyetlen személy kezelte engedélyt, ami megnehezíti annak korlátozását, hogy mely alkalmazások férhessenek hozzá a privát dokumentumaihoz, képeihez, ill videókat. A Scoped Storage alkalmazással az Android korlátozza, hogy egy alkalmazás mennyi hozzáférést férhet hozzá az érzékeny fájlokhoz a felhasználó kifejezett hozzájárulása nélkül. További részleteket a Scoped Storage oldalon talál ebben a cikkben vagy tekintse meg a Google alábbi ábráját a változások összefoglalásához.
Miközben az Android 11 tárhely-hozzáférésének korlátozásával voltak elfoglalva, a Google a meglévő API-kat is továbbfejlesztette a felhasználói élmény javítása érdekében. Például az Android 11-et célzó alkalmazások használhatják a MediaStore API-t törölje a fájlt a kukába. Ahhoz azonban, hogy egy fájlt a kukába helyezhessen, az alkalmazásnak meg kell tennie felszólítja a felhasználót, hogy adjon neki írási jogosultságot. Mivel a telefonjáról a Google Fotókhoz hozzáadott képek és videók többsége egy másik alkalmazásból származik – például a stock kameraalkalmazás — a Photosnak engedélyt kell kérnie, mielőtt áthelyezhetne egy fájlt a következőre vagy onnan szemét. A Google Fotók azonban nem kér engedélyt a fájlok kukába helyezésére, ha olyan Pixel telefont használ, amelyen Android 11 van telepítve. Ennek ellenére alapvetően minden más Android 11-et futtató eszközhöz engedélyt kér, beleértve a legtöbb Samsung, Xiaomi, OnePlus és ASUS eszközt is. Mi ad?
Ennek az az oka, hogy a rendszergaléria alkalmazásra nem vonatkoznak a hatályos tárolási korlátozások. Ez azt jelenti, hogy a készletgaléria alkalmazás kifejezett engedély nélkül nyithat meg, szerkeszthet vagy törölhet képeket és videókat. A Google Fotók rendszergaléria-alkalmazásként előre be van állítva a Pixel telefonokon, de a legtöbb OEM ehelyett saját galériaalkalmazást állít be. Ezenkívül nincs felhasználó számára elérhető beállítás a rendszergaléria alkalmazás módosítására, még az Android „alapértelmezett alkalmazások” képernyőjén sem. Azonban ott van rejtett módja a rendszergaléria alkalmazás megváltoztatásának, de van ilyen nagy Figyelmeztetés: Csak egy rendszeralkalmazás állítható be rendszergaléria-alkalmazásként. Ez csak a telefonokat jelenti rendszeralkalmazásként már előre telepítve van a Google Fotók kihasználhatja ezt a trükköt.
Nem sok telefon felel meg ennek a kritériumnak, de tesztünk alapján, ezt megerősíthetjük működik a legtöbb OnePlus-on és néhány ASUS-telefonon. Ez a módszer egyik Samsung telefonon sem működött, amelyen teszteltük, és nem működött a Xiaomi Mi 10 Pro esetében sem. Ha root hozzáféréssel rendelkezik, vagy egyéni ROM-ot futtat, akkor ez a módszer működhet az eszközén, miután rendszerezte a Google Fotók alkalmazást, de ezt a módszert csak készleteszközökön teszteltük.
Hogyan lehet (talán) a Google Fotókat rendszergaléria alkalmazássá tenni
Kieron Quinn érdeme (Quinny899 az XDA fórumon), hogy megosszák ezt a trükköt!
Az első dolog, amit meg kell tennie, hogy telepítse az ADB-t a számítógépére. Frissített útmutatónk van ennek módjáról itt. Az ADB beállítása után írja be a következő parancsot:
adbshellcmdroleadd-role-holderandroid.app.role.SYSTEM_GALLERYcom.google.android.apps.photos
Ha nem lát hibát, akkor valószínűleg működött! Gyorsan ellenőrizheti, hogy működik-e, ha fényképet készít, majd megpróbálja törölni a Google Fotókból. Alternatív megoldásként a következő parancsot is futtathatja:
adb shell dumpsys role
...és ellenőrizze, hogy az "android.app.role" "tartója"-e. SYSTEM_GALLERY" a "com.google.android.apps.photos" (a Google Fotók csomagneve).
Mit csinál ez a parancs?
Az Android 10 hozzáadta a új API „Szerepek". Ha egy alkalmazásnak bizonyos szerepköre van, akkor automatikusan hozzáférést kap bizonyos engedélyekhez. Például a SYSTEM_GALLERY szerepkör automatikusan "teljes olvasási és írási hozzáférést biztosít egy alkalmazásnak a külső tárolón lévő összes kép- és videofájlhoz, beleértve a helyhez való hozzáférést is metaadatok." A SYSTEM_GALLERY szerepkör csak rendszeralkalmazásoknak adható, alapértelmezett tulajdonosát pedig az Android határozza meg. konfigurációs érték "config_systemGallery." Amint azt korábban kifejtettük, a legtöbb OEM ezt az értéket a saját csomagnevére állítja be saját galéria alkalmazás. Ez az érték nem módosítható a keretrendszer módosítása vagy egy átfedés telepítése nélkül, mindkettő root hozzáférést igényel.
Azonban azt van lehetséges hozzáadni egy másik alkalmazást a SYSTEM_GALLERY szerepkör birtokosaként, de csak ha az alkalmazás egyben rendszeralkalmazás is. Ez sok OnePlus és egyes ASUS telefonokon lehetséges, mivel ezek az OEM-ek látszólag rendszerszinten, nem pedig felhasználói szinten előre telepítették a Google Fotókat. Emiatt a Google Fotók alkalmazás jogosult a SYSTEM_GALLERY szerepkör betöltésére, és mi kihasználjuk az Android rejtett RoleManager shell felületén, hogy hozzáférést biztosítson azokhoz az engedélyekhez, amelyeket általában nem lehet megadott. Ha megpróbálja megadni a SYSTEM_GALLERY szerepkört egy nem rendszeralkalmazásnak, a következő hibaüzenetet fogja látni a logcatben:
ERoleControllerServiceImpl: Packagedoesnotqualifyfortherole, package: com.google.android.apps.photos, role: android.app.role.SYSTEM_GALLERY
Sajnos nem sikerült megkerülni ezt a korlátozást, de ha igen, megosztjuk módszerünket a közösséggel. Természetesen azt szeretnénk, ha a Google egyszerűen a SYSTEM_GALLERY szerepkört felhasználó által definiálhatóvá tenné, nem pedig az OEM választására korlátozva.