Tema fosc, API tèrmica i bombolles: preparació de l'aplicació per a Android 10

Autora: Louise Ward
Data De La Creació: 6 Febrer 2021
Data D’Actualització: 1 Juliol 2024
Anonim
Tema fosc, API tèrmica i bombolles: preparació de l'aplicació per a Android 10 - Aplicacions
Tema fosc, API tèrmica i bombolles: preparació de l'aplicació per a Android 10 - Aplicacions

Content


L’última versió més gran, fins ara sense nom d’Android, presenta funcions i API que podeu utilitzar per dissenyar noves experiències per als vostres usuaris, a més d’uns quants canvis de comportament que haureu de tenir cura.

Tot i que encara no heu actualitzat l'aplicació per orientar-vos a Android Q, alguns d'aquests canvis tindran un impacte cada aplicació instal·lada a Android Q, fins i tot si la vostra aplicació no orienta explícitament aquesta versió d'Android.

Alguns d’aquests canvis afectaran totes les aplicacions instal·lades a Android Q.

Independentment de si teniu ganes d’experimentar amb les últimes funcions o només voleu assegurar-vos que la vostra aplicació no es trencarà en el moment en què s’ha instal·lat a Android Q, ara és el moment perfecte per començar a preparar-vos per a la versió imminent d’Android Q.


També llegiu:Android Q: Tot el que els desenvolupadors han de saber

En aquest article, abordaré tots els passos que heu de fer per preparar la vostra aplicació per a Android Q, des de funcions completament noves fins a ajustaments menors de seguretat que puguin interrompre tota la vostra aplicació.

Eviteu l’acceleració de CPU i GPU: Supervisar la temperatura del dispositiu

El sobreescalfament pot danyar greument el telèfon intel·ligent o la tauleta. Com a mesura de protecció, Android agilitzarà la CPU i la GPU del dispositiu quan detecti que les temperatures s’acosten a nivells perillosos.

Si bé aquest comportament ajuda a protegir el maquinari del dispositiu, també pot tenir un impacte notori en el rendiment de l’aplicació, sobretot si l’aplicació utilitza gràfics d’alta resolució, càlculs pesats o realitza activitats de xarxa en curs.

Si bé aquesta desacceleració és imposada pel sistema, el vostre usuari de telèfons intel·ligents o de tauletes culparà la vostra aplicació de qualsevol baixada de rendiment. En el pitjor dels casos, l’usuari pot decidir que l’aplicació sigui incorrecte o trencada, possiblement fins i tot desinstal·leu l’aplicació i us deixi una revisió negativa de Google Play en aquest procés.


En el pitjor dels casos, l’usuari pot decidir que l’aplicació sigui incorrecte o trencada.

Android Q presenta una nova API tèrmica que us pot ajudar a evitar aquest acceleració de CPU i GPU. Podeu utilitzar el mètode addThermalStatusListener () d'aquesta API per crear un oient per a canvis d'estat tèrmic i, a continuació, ajustar el comportament de l'aplicació sempre que la temperatura del dispositiu comenci a augmentar. Això pot ajudar a reduir les possibilitats que el sistema recorre a l’acceleració de CPU o GPU. Per exemple, podeu reduir la tensió que aplica la vostra aplicació al sistema de sobreescalfament reduint la resolució o la velocitat de fotograma o desactivant funcions intensives en recursos, com ara la connectivitat de xarxa.

Tingueu en compte que l'API tèrmica d'Android Q requereix una nova capa HAL del dispositiu, que en el moment d'escriure només estava disponible en dispositius Pixel.

Reduïu la tensió de la vista i augmenteu la visibilitat amb el tema Dark

A Android Q, els usuaris poden activar un tema Dark a tot el sistema dissenyat per reduir la tensió de la vista, millorar la visibilitat en condicions de poca llum i reduir l’ús d’energia en dispositius amb pantalles OLED.

El tema fosc és una interfície d'usuari de poca llum que utilitza superfícies fosques per al fons i colors clars en primer pla per a elements com el text i la iconografia.

Els usuaris poden activar aquest tema Dark a tot el sistema en qualsevol moment mitjançant un nou mosaic de configuració ràpida o bé llançant l’aplicació de configuració del dispositiu i navegant a Display> Theme. Als dispositius Pixel, canviar al mode Estalvi de bateria també activarà automàticament el tema Dark.

Dark Theme s’aplica a tot el dispositiu, de manera que per proporcionar una experiència d’usuari constant, haureu de garantir que la vostra aplicació admeti el tema Dark.

Per afegir suport a Dark Theme, assegureu-vos que utilitzeu la versió més recent de la biblioteca Android Material, i actualitzeu l'aplicació per heretar-la de Theme.MaterialComponents.DayNight, per exemple:

Aleshores, haureu de crear un fitxer res / valors-night / topics.xml i heretar de Theme.MaterialComponents:

Per proporcionar una bona experiència d’usuari, potser haureu de modificar el comportament de l’aplicació quan el tema Dark està habilitat, per exemple, substituir o eliminar els gràfics que emeten una quantitat important de llum.

Podeu comprovar si el tema Dark està habilitat mitjançant el següent fragment:

int currentNightMode = configuration.uiMode & Configuration.UI_MODE_NIGHT_MASK; switch (currentNightMode) {// The Dark Theme actualment no està actiu // case Configuration.UI_MODE_NIGHT_NO: break; // Dark Theme està actiu // Configuration case.UI_MODE_NIGHT_YES: break; }

L'aplicació pot modificar el seu comportament, depenent de quin tema estigui actualment actiu.

API del tauler de configuració: mostra la configuració del dispositiu dins de l'aplicació

Si la vostra aplicació està dirigida a Android Q, ja no podreu modificar directament la configuració de Wi-Fi del dispositiu. En lloc d'això, haureu de demanar a l'usuari que faci els canvis desitjats mitjançant l'API del tauler de configuració.

Podeu utilitzar aquesta nova API per mostrar contingut des de l'aplicació Configuració del dispositiu, com a plafó en línia que es llisca sobre el contingut de l'aplicació. Des de la perspectiva de l’usuari, aquests controls integrats a l’aplicació els permeten modificar de forma ràpida i senzilla la configuració del dispositiu sense haver de llançar una aplicació independent. Per a un desenvolupador d'aplicacions, l'API del tauler de configuració us permet canviar l'estat de Wi-Fi i altres configuracions crucials del dispositiu, sense animar l'usuari a navegar lluny de l'aplicació.

A Android Q, Google fa que les notificacions en forma de capçal de xat formin part oficial de la plataforma Android amb la introducció de l'API Bubble.

Dissenyades com a alternativa a SYSTEM_ALERT_WINDOW, les notificacions de bombolles semblen "surar" per sobre d'altres continguts de l'aplicació, en un estil que recorda les notificacions flotants utilitzades per Facebook Messenger per a Android.

Les notificacions de bombolles es poden ampliar per revelar informació addicional o accions personalitzades que permeten als usuaris interaccionar amb l'aplicació des de fora del context de l'aplicació.

Quan l'aplicació intenti crear la seva primera bombolla, Android preguntarà a l'usuari si volen permetre totes les bombolles de la vostra aplicació o bé bloquejar-ne totes. Si l’usuari decideix bloquejar totes les bombolles de l’aplicació, es mostrarà en lloc de notificacions estàndard. Les bombolles també es mostraran com a notificacions estàndard sempre que el dispositiu estigui bloquejat o que estigui sempre a la pantalla activa. Per proporcionar una bona experiència d’usuari, heu d’assegurar-vos que totes les vostres bombolles es mostren i funcionen correctament com a notificacions habituals.

Per crear una bombolla, necessitareu una activitat que defineixi el comportament de la bombolla expandida i un disseny que defineixi la seva interfície d’usuari. Per obtenir una guia pas a pas sobre com es pot crear la primera notificació de bombolles, consulteu Explorar Android Q: Afegir les notificacions de bombolles a la vostra aplicació.

Augmentant l’accessibilitat amb la navegació gestual a tot el sistema

Els usuaris amb problemes de destresa poden trobar més fàcil la interacció amb el dispositiu mitjançant gestos. A Android Q, els usuaris tenen l’opció d’habilitar la navegació gestual per tot el dispositiu, cosa que afectarà cada aplicació instal·lada en aquest dispositiu.

Tot i que no actualitzeu la vostra aplicació per orientar-se a Android Q, la vostra aplicació voluntat pot veure's afectat per la configuració de navegació del dispositiu, de manera que heu de garantir que la vostra aplicació sigui compatible amb la navegació gestual d'Android Q.

En mode de navegació gestual, la vostra aplicació hauria d’utilitzar tota la pantalla, de manera que el primer pas és dir al sistema Android que la vostra aplicació admet la vista de punta a punta. Per dissenyar la pantalla de pantalla completa de l'aplicació, podeu utilitzar els indicadors SYSTEM_UI_FLAG_LAYOUT_STABLE i SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, per exemple:

view.setSystemUiVisibility (View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);

També haureu d’implementar assistència per a una barra de sistema transparent afegint el següent al tema:

Quan arribi el moment de provar l'aplicació, haureu de comprovar que els gestos del sistema d'Android Q no desencadenin cap control de l'aplicació, com ara botons o menús. En particular, Android Q utilitza un botó interior per a l'acció de darrere i un botó cap amunt per a interruptor ràpid i domèstic, que pot interferir amb qualsevol element de la interfície d'usuari situat en aquestes àrees.

Si durant la prova es descobreix que el fet de saltar per la part inferior de la pantalla o desviar-se cap a dins està activant els controls de l’aplicació, llavors podeu indicar quines regions estan configurades per rebre entrada tàctil. Per bloquejar determinades zones, passa una llista a l’API View.setSystemGestureExclusionRects () d’Android Q, per exemple:

Llista exclusióRectes; public void onLayout (boolean changesCanvas, int esquerra, int superior, int dreta, int inferior) {setSystemGestureExclusionRects (exclusRects); } public void onDraw (Canvas canvas) {setSystemGestureExclusionRects (exclusióRectes); }

Si la vostra aplicació utilitza gestos personalitzats, també heu de comprovar que no entrin en conflicte amb els gestos de navegació del sistema.

Captura d’àudio d’aplicacions de tercers

Android Q presenta una API de AudioPlaybackCapture que permet que la vostra aplicació capti àudio d’altres aplicacions, perfecte si estàs creant una aplicació de gravació de pantalla.

Per capturar la reproducció d'àudio, heu de sol·licitar el permís RECORD_AUDIO i, a continuació,:

  • Creeu una instància AudioPlaybackCaptureConfiguration amb AudioPlaybackCaptureConfiguration.Builder.build ().
  • Configura i crea la instància AudioRecord, trucant a setAudioPlaybackCaptureConfig i després passant la configuració a l'objecte AudioRecord.

Per exemple:

MediaProjection mediaProjection; AudioPlaybackCaptureConfiguration config = nou AudioPlaybackCaptureConfiguration.Builder (mediaProjection) .addMatchingUsage (AudioAttributes.USAGE_MEDIA) .build (); AudioRecord record = nou AudioRecord.Builder () .setAudioPlaybackCaptureConfig (config) .build ();

Aquesta nova API significa que, per defecte, es podran gravar aplicacions de tercers tot de l'àudio de la vostra aplicació Per a algunes aplicacions, això pot suposar un problema de privadesa o fins i tot pot posar en perill la seva aplicació d’infracció dels drets d’autor. Si es requereix, podeu evitar que tercers capturin l'àudio de la vostra aplicació afegint Android: allowAudioPlaybackCapture = "false" al manifest.

Fins i tot amb aquest indicador al seu lloc, les aplicacions del sistema encara podran capturar la reproducció d’àudio de l’aplicació, ja que les funcions d’accessibilitat, com el subtítol, depèn de la captura d’àudio.

Per proporcionar una experiència accessible, és recomanable que sempre permeteu que els components del sistema capturen l’àudio de la vostra aplicació, però podeu bloquejar aplicacions del sistema mitjançant la constant ALLOW_CAPTURE_BY_NONE, si es requereix.

Autenticació de l’autenticació biomètrica

Android Q realitza diversos canvis en l’autenticació de BiometricPrompt d’Android.

1. Comproveu la capacitat biomètrica

Abans d’invocar BiometricPrompt, ja podeu comprovar si el dispositiu admet l’autenticació biomètrica, mitjançant el nou mètode canAuthenticate ().

2. Diàlegs d'autenticació biomètrics racionalitzats

Android Q fa un canvi subtil als diàlegs d'autenticació de BiometricPrompt.

Android permet als usuaris autentificar la seva identificació mitjançant diverses modalitats biomètriques "mans lliures" implícites, com ara l'autenticació de rostre o d'iris. No obstant això, fins i tot si l'usuari verifica la seva identificació amb èxit mitjançant una modalitat implícita, ho serà encara heu de tocar el botó de confirmació del diàleg per completar el procés d’autenticació.

Per a moltes modalitats biomètriques implícites, aquesta acció de confirmació no és necessària, de manera que a Android Q podeu sol·licitar que el sistema elimini el botó de confirmació del quadre de diàleg d'autenticació biomètrica.

Aquest petit canvi pot tenir un impacte positiu en l’experiència de l’usuari, ja que verificar la vostra identitat mirant el dispositiu, és més fàcil que mirar el dispositiu, esperar que es reconegui la cara i, a continuació, tocar el botó Confirma.

A Android Q, podeu sol·licitar que el sistema elimini el botó de confirmació passant fals al mètode setConfirmationRequired (). Tingueu en compte que el sistema pot optar per ignorar la vostra sol·licitud en determinats escenaris, per exemple, si l'usuari ha desactivat l'autenticació implícita a la configuració del seu dispositiu.

3. Mètodes alternatius d'autenticació

De vegades, és possible que l'usuari no es pugui autenticar mitjançant entrada biomètrica. En aquests escenaris, els podeu permetre autentificar la seva identificació mitjançant el PIN, el patró o la contrasenya del dispositiu mitjançant el nou mètode setDeviceCredentialAllowed ().

Un cop activat aquest recurs de reposició, inicialment se li demanarà a l'usuari que s'autentiqui mitjançant biomètrics, però tindrà l'opció d'autentificar-se mitjançant un PIN, un patró o una contrasenya.

Executeu codi DEX incrustat directament des del vostre APK

A Android Q, és possible executar codi DEX incrustat directament des del fitxer APK, cosa que pot evitar que els atacants puguin alterar el codi compilat localment de l'aplicació.

Podeu habilitar aquesta nova funció de seguretat afegint el següent a l'element del manifest:

Android: useEmbeddedDex = "true"

Podeu crear un APK que conté codi DEX no comprimit, afegint el següent al vostre fitxer de creació de Gradle:

aaptOptions {noCompress dex}

Nous permisos per al reconeixement d’activitat

Android Q presenta un nou permís d’execució com.google.android.gms.permission.ACTIVITY_RECOGNITION per a les aplicacions que necessiten registrar el recompte de passos de l’usuari o classificar la seva activitat física, com ara córrer o anar en bicicleta.

L’API de reconeixement d’activitats d’Android ja no proporcionarà resultats tret que l’aplicació tingui aquest nou permís ACTIVITY_RECOGNITION. Tingueu en compte que si la vostra aplicació utilitza dades de sensors integrats com el giroscopi o l'acceleròmetre, no cal que sol·liciteu el permís ACTIVITY_RECOGNITION.

S'inicien restriccions a l'activitat

Per minimitzar les interrupcions, Android Q posa noves restriccions quan la vostra aplicació pot iniciar una activitat. Trobareu una llista completa de totes les condicions que permeten iniciar-se en els documents oficials d'Android.

Les superposicions d'alerta del sistema s'han eliminat d'Android Go

Si la vostra aplicació funciona en un dispositiu que funciona amb Android Q i Android Go, no podrà accedir al permís SYSTEM_ALERT_WINDOW. Aquest canvi s'ha implementat per evitar les caigudes de rendiment notables que es poden produir quan els dispositius Android Go intenten dibuixar la finestra de superposició SYSTEM_ALERT_WINDOW.

Acomiadem Android Beam

Android Q marca el final d’Android Beam, ja que aquesta funció de compartir dades ja està oficialment desfasada.

Mantenir els usuaris segurs: canvis importants de privadesa

Android Q introdueix diversos canvis de privadesa que permeten als usuaris un major control sobre les seves dades i les funcions sensibles del dispositiu.

Malauradament, aquests canvis poden afectar el comportament de l’aplicació i fins i tot poden trencar completament l’aplicació. Quan poseu a prova l'aplicació amb Android Q, heu de prestar una atenció especial als següents canvis de privadesa:

1. Emmagatzematge objectiu: el nou model d'emmagatzematge extern d'Android

Android Q estableix noves restriccions sobre la manera com les aplicacions accedeixen a l'emmagatzematge extern.

De manera predeterminada, si l’aplicació està dirigida a Android Q, tindrà una “vista filtrada” a l’emmagatzematge extern del dispositiu (abans anomenada “vista sandboxed”), que només proporciona accés a un directori específic per a l’aplicació.

Amb un emmagatzematge definit, la vostra aplicació pot accedir a aquest directori específic per a l'aplicació i a tot el contingut, sense haver de declarar els permisos d’emmagatzematge.Tanmateix, la vostra aplicació només pot accedir als fitxers creats per altres aplicacions si se li ha concedit el permís READ_EXTERNAL_STORAGE i els fitxers es troben a Fotos (MediaStore.Images), Vídeos (MediaStore.Video) o Música (MediaStore.Audio). Si la vostra aplicació requereix accés a un fitxer que no compleix aquests criteris, haureu d’utilitzar el Framework Access Access to Storage.

En el moment d’escriure, era possible desactivar l’emmagatzematge d’abast afegint Android: requestLegacyExternalStorage = “true” al Manifest del vostre projecte, però d’acord amb els documents oficials d’Android, l’emmagatzematge amb finalitat serà requerit per totes les aplicacions, per la qual cosa es recomana que actualitzeu l'aplicació el més aviat possible.

2. Decidiu quan una aplicació pot accedir a la vostra ubicació

Android Q proporciona als usuaris un major control sobre quan una aplicació pot accedir a la seva ubicació.

Quan la vostra aplicació requereixi informació sobre la ubicació, Android Q mostrarà un diàleg per demanar si l’usuari vol compartir aquesta informació:

  • Quan la vostra aplicació s'està executant en primer pla només.
  • Tot el temps (és a dir, quan l'aplicació es troba en primer pla i el rerefons).

Si l’usuari concedeix l’aplicació tot el temps a l’aplicació, Android Q crearà notificacions periòdiques per recordar a l’usuari que l’aplicació pot accedir a la seva ubicació en qualsevol moment.

Per implementar aquests canvis, Android Q introdueix un nou permís ACCESS_BACKGROUND_LOCATION.

Si la vostra aplicació requereix accés a la informació sobre la ubicació mentre es troba en segon pla, haureu de sol·licitar aquest nou permís, al costat del permís ACCESS_COARSE_LOCATION o ACCESS_FINE_LOCATION existent. Per exemple:

3. Noves restriccions als identificadors del sistema no restablibles

Si necessiteu accés a identificadors del sistema no restablibles, com ara el número IMEI i el número de sèrie, haureu de sol·licitar el permís READ_PRIVILEGED_PHONE_STATE.

Sempre que sigui possible, és recomanable que utilitzeu mètodes alternatius de seguiment de l'usuari. Per exemple, si voleu registrar analítiques d’usuaris, podríeu crear un ID de publicitat d’Android en lloc de sol·licitar l’accés a identificadors de dispositius no restablibles.

Assegureu-vos que esteu preparat per a Android Q: Provar la vostra aplicació

La millor manera de garantir que la vostra aplicació ofereix una bona experiència d’usuari a Android Q, és provar-la en un dispositiu que utilitza Android Q.

Mentre esperem el llançament oficial, hi ha tres maneres de provar l'aplicació amb les previsualitzacions del desenvolupador d'Android Q: inscriure el vostre dispositiu al programa Android Beta, fer flash manualment una imatge del sistema Android Q al vostre dispositiu o utilitzar un Android Virtual Dispositiu (AVD).

1. Instal·leu Android Q beta en un dispositiu físic

Si teniu un dispositiu compatible (podeu trobar-ne la llista completa aquí), podeu obtenir actualitzacions Android Q a l’aire mitjançant la inscripció al programa Android Beta. En el moment d’escriure, tots els telèfons de Google Pixel estan admesos pel programa Android Beta. Inclou Google Pixel, Pixel XL, Pixel 2, Pixel 2 XL, Pixel 3, Pixel 3 XL, Pixel 3a i Pixel 3a XL.

Si no teniu cap píxel, Android Q beta també està disponible en diversos dispositius de diversos fabricants, com ara Asus, Huawei, LG, Xiaomi i molt més. Per a la llista completa dels dispositius compatibles, consulteu la llista aquí.

Un cop us heu inscrit, Google estima que rebreu entre tres i sis actualitzacions al llarg del programa.

Abans d’inscriure’s al programa Beta, hi ha diversos inconvenients que heu de tenir en compte. Les versions prèvies a la publicació d'Android poden contenir errors i errors que puguin evitar que el dispositiu funcioni amb normalitat i no hi ha assistència oficial disponible si es troben amb problemes. Els usuaris que utilitzin versions pre-llançament d'Android tampoc rebran actualitzacions de seguretat mensuals separades, cosa que pot deixar el dispositiu vulnerable a atacs i explotacions.

Finalment, tot i que podeu desactivar-vos del programa i tornar a una versió estable d’Android en qualsevol moment, totes les dades desades localment del vostre dispositiu s’esborraran quan torni a l’edició estable. Tingueu en compte que si romaneu inscrit fins al final del programa beta, us graduareu i rebreu la versió pública i final de Android Q sense perdent qualsevol de les vostres dades.

Si voleu començar a rebre actualitzacions Android Q via aeri, dirigiu-vos al lloc web d'Android Beta per obtenir més informació.

2. Feu clic a la imatge manual del sistema Android Q

Si no us agrada la idea de rebre actualitzacions Android Q a l’aire lliure, podeu descarregar i flashar manualment una imatge del sistema Android Q al dispositiu Pixel.

Google ha publicat les imatges del sistema per a tots els dispositius Pixel compatibles, juntament amb instruccions sobre com es pot parpellejar una imatge del sistema. Aquest plantejament manual pot ser útil si necessiteu provar amb una versió específica d'Android Q, o si voleu començar a provar-los immediatament en lloc de registrar-vos al programa Beta i potser espereu fins a 24 hores per rebre la primera actualització.

3. Utilitzeu l’emulador d’Android

Si no voleu els riscos associats a la instal·lació de programari beta en un smartphone o tauleta físic o si no disposeu d’un dispositiu compatible, podeu fer servir un AVD.

Per descarregar la imatge de previsualització d'Android Q, seguiu aquests passos:

  • Llança Android Studio.
  • Seleccioneu Eines> Administrador de SDK a la barra d’eines d’Android Studio.
  • Assegureu-vos que està seleccionada la pestanya Plataformes SDK.
  • Seleccioneu Mostra els detalls del paquet.
  • Seleccioneu Imatge del sistema d’àtom Intel x86 de Google Play.

  • Feu clic a D'acord.
  • Creeu un AVD mitjançant aquesta imatge del sistema.

Com puc provar la meva aplicació amb Android Q?

Un cop tingueu un dispositiu físic o un AVD que executi Android Q, haureu de posar la vostra aplicació mitjançant els mateixos processos i procediments de prova que feu servir quan prepareu cap alliberament. Durant la prova, també heu de prestar una atenció especial als canvis de privadesa d'Android Q, ja que poden afectar l'aplicació.

Un cop hàgiu comprovat que la vostra aplicació ofereix una bona experiència d’usuari a Android Q, haureu de publicar la vostra aplicació compatible amb Android Q a Google Play tan aviat com sigui possible. En alliberar l’aplicació abans d’hora, podeu recollir comentaris abans que la majoria de la base d’usuaris es traslladin a Android Q.

De forma alternativa, podeu utilitzar pistes de prova de Google Play per enviar el vostre APK a un grup selecte de provadors i, a continuació, realitzar un llançament progressiu per a la producció quan estigueu satisfets amb els vostres comentaris.

Esperem que aquest article us hagi ajudat a preparar la vostra aplicació per a Android Q. Quina funció d'Android Q t'emociona més?

Regal internacional Huawei P30 Pro!

John Stephens

Juliol 2024

El Google Pixel 3 pot er el rei de la fotografia, però no i Huawei té alguna coa a dir. El nou Huawei P30 Pro inclou una configuració de triple càmera (completa amb un enor de temp...

Actualització, 24 d’abril de 2019 (12:30 ET):Huawei va enviar una declaració en repota a l'article egüent. L’emprea rebutja le concluion extrete per Wang Yue aZhihu i reclama que el...

Articles Nous