Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

627
Views
Cómo Localazy y Phrase Android SDk actualizan las picaduras declaradas en strings.xml por aire

Estoy trabajando en una aplicación en la que se requiere que tenga que cambiar. Actualizar los recursos de cadena declarados en mi archivo String.xml de forma inalámbrica sin cargar una nueva versión en las tiendas. (Del servidor) Actualmente, ya está implementado por Localazy y Phrase Android SDK.

El cliente quiere actualizar todo lo declarado en String.xml y para cada local.

Tengo que hacerlo para varios idiomas. Ya he implementado la localización. Pero la aplicación aún requiere cambios dinámicos en los recursos de String,

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Como autor de esta tecnología en Localazy , puedo explicarlo bastante bien.

¿Cómo cambiamos strings.xml sobre la marcha? nosotros no

Nuestro complemento de Gradle agrega una biblioteca a su aplicación, realiza un análisis de código de bytes y enruta todas las llamadas de métodos relevantes a través de nuestra biblioteca. La propia biblioteca actúa como un proxy, actualiza su base de datos de cadenas internas desde nuestros servidores y sirve cadenas actualizadas siempre que sea posible. También calcula estadísticas anónimas sobre el uso de cadenas, etc., para optimizar el proceso de traducción en el sitio de Localazy.

Todo esto sucede durante el tiempo de compilación sin tocar nunca el código fuente y los recursos. Es completamente transparente.

Si bien parece una tarea simple, es mucho más complicada ya que es imposible enrutar fácilmente todas las llamadas a métodos. Por ejemplo, LayoutInflater usa un método diferente para obtener cadenas, y lo mismo se aplica a Preferencias, Menús, etc.

También descargamos y fusionamos su archivo strings.xml con las últimas traducciones disponibles en Localazy, ya que el método estándar del sistema siempre es una alternativa razonable. Debemos manejar correctamente los casos extremos, como los alias de idioma ( iw vs. he ), idiomas RTL, etc.

Uno de los mayores desafíos fue admitir correctamente los tipos de compilación, los tipos de productos, las bibliotecas y los módulos de aplicaciones dinámicas. No se trata solo de servir cadenas de la base de datos interna, sino de seleccionar la correcta. Por ejemplo, una cadena con la misma clave de una biblioteca tiene menor prioridad que la de la aplicación. La situación es diferente para los módulos de aplicaciones dinámicas.

Hemos diseñado Localazy para manejar todas estas situaciones desde cero: la biblioteca, cómo almacenamos cadenas en nuestros servidores, etc.

No es una tarea sencilla hacer esto correctamente, así que es mejor usar la solución existente si es posible.

No dude en preguntarme si necesita más ayuda.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!