Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

631
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda