anonymous Log in
Search
Recents:
v3.0
sd
External Object Offline Android Genexus16u9
20/05/20 13:40

franco.sibona

Replies: 11

Buenos dias
El año pasado pude integrar parcialmente Programas generados en
andrroid Studio con Genexus16u3, los recursos de este link funcionaron
correctamente con ajustes minimos:
https://wiki.genexus.com/commwiki/servlet/wiki?43680,Como+crear+un+External+Object+Offline+para+Android
Recientemente vi esto: "Google Play will require that new apps target at
least Android 10 (API level 29) from August 2020, and that app updates
target Android 10 from November 2020." (ref.: Google Developers). This
implies that you must use GeneXus 16 Upgrade 9 or higher to be able to
deploy to Goolge Play from those dates on."
en este publicacion
https://wiki.genexus.com/commwiki/servlet/wiki?45275,GeneXus+16+upgrade+9
Y trate de reproducir lo mismo en Genexus16u9, y da errores de
compilacion en Android Studio, diciendo que no se encuentran librerias.
Logre compilar accediendo a las librerias de Genexus16u3 en el
SampleModule, pero imagino que no será compatible con las nuevas
restricciones de Google Play
¿Alguien sabe si ya existen los recursos del SampleModule para Genexus16u9?
Gracias de antemano
Saludos
Replies

jpgonzab

20/05/20 14:00
Franco, Lo que debes cambiar es la variable de ambiente GENEXUS_REPO para que apunte al nuevo directorio de instalación (o dejarla igual si instalaste U9 en el mismo lugar) y la versión del FlexibleClient que tu control usa declarada en el archivo build.gradle del módulo del proyecto de Android Studio. El valor que debes colocar allí es el nombre de la carpeta que se encuentra bajo /Android/m2Repository/com/FlexibleClient, la cual para v16U9 es "16.9": [image: imagen.png] Luego, asegurarte que tu proyecto compile y ejecutar la tarea uploadArchives. Saludos, On Wed, May 20, 2020 at 1:41 PM Franco Sibona

franco.sibona

20/05/20 14:02
si, al hacer lo que dices no compila el SampleModule El mié., 20 may. 2020 a las 13:00, Juan Pablo Gonzalez (< jpgonzalez@genexus.com>)

jpgonzab

20/05/20 14:08
Debes revisar el código porque pueden haber cambios del lado del FlexibleClient que impactan sobre lo que tenés programando. Por ejemplo, seguramente debas cambiar las líneas de retorno de los métodos invoke de los IMethodInvoker declarados en la clase BasicExternalObject. En lugar de: return new ExternalApiResult(ActionResult.SUCCESS_CONTINUE); ahora es: return ExternalApiResult.SUCCESS_CONTINUE; Saludos, On Wed, May 20, 2020 at 2:03 PM Franco Sibona

franco.sibona

20/05/20 14:18
Estoy usando el samplemodule reciendescargado sin nada implementado por mi. adjunto mi bulid.gradle que funciona (siempre que este instalado Gx16u3) adjunto build.gradle modificado para usar Gx16u9 que da errores: error: package android.support.v7.widget does not exist import android.support.v7.widget.AppCompatTextView; error: cannot find symbol public class BasicUserControl extends AppCompatTextView implements IGxEdit, error: ExternalApiResult(ActionResult) has private access in ExternalApiResult return new ExternalApiResult(ActionResult.SUCCESS_CONTINUE); y muchos mas [image: image.png] El mié., 20 may. 2020 a las 13:08, Juan Pablo Gonzalez (< jpgonzalez@genexus.com>)

franco.sibona

20/05/20 14:19
Ahora si adjunto los gradle ---------- Forwarded message ---------

franco.sibona

20/05/20 14:35
Disculpa Juan PAblo Crei que tu respuesta era de soporte Genexus, ya que tambien envie la consulta, es por eso que te remití las configuraciones En efecto veo que el cambio de flexibleclient deja sin funcionar el SampleModule, precisamente por eso consulto si ya hay una version para Gx16u9 Muchas gracias por tu respuesta de todos modos Saludos El mié., 20 may. 2020 a las 13:08, Juan Pablo Gonzalez (< jpgonzalez@genexus.com>)

jpgonzab

20/05/20 14:39
Franco, El FlexibleClient es actualizado en todos los Upgrades y se distribuye con GeneXus, por lo que si "hay una versión para v16U9". El archivo build.gradle que adjuntaste está correcto. Lo que no lo está es el código, ya que en las últimas versiones pasamos a usar AndroidX y hubo cambios en el FlexibleClient, como el que te mencioné anteriormente con respecto a la clase ExternalApiResult. Siendo que no tenés modificaciones hechas, te recomiendo que te actualices los fuentes desde Github, sigas el README y compiles nuevamente. Saludos, On Wed, May 20, 2020 at 2:35 PM Franco Sibona

franco.sibona

20/05/20 14:55
Muchas gracias de nuevo por tu atención, El problema es que no tengo mucho conocimiento de Android Studio, si bien pude echar a andar el External Object Offline Android Genexus16u3 con el samplemodule que esta en https://wiki.genexus.com/commwiki/servlet/wiki?43680,Como+crear+un+External+Object+Offline+para+Android no logro entender como hacer algo con la referencia que me mandaste https://github.com/genexuslabs/SDExtensionsSample/blob/master/README.md (creo que pase por esto el año pasado y esta referencia no sirve para el caso offline, pero no puedo estar seguro) Saludos El mié., 20 may. 2020 a las 13:39, Juan Pablo Gonzalez (< jpgonzalez@genexus.com>)

jpgonzab

20/05/20 15:05
Franco, El README es una guía para saber como hacer funcionar el ejemplo. Si lo seguís paso a paso, terminás obteniendo como resultado el UC y EO corriendo en una aplicación GeneXus. Debés clonar el repositorio de Github SDExtensionsSample, abrir con Android Studio el directorio SampleModule y ejecutar el comando "gradlew uploadArchives" desde la línea de comando/terminal. Saludos, On Wed, May 20, 2020 at 2:56 PM Franco Sibona

franco.sibona

20/05/20 15:19
Que curioso en Github apareció esto recien hace una hora: SampleModule Update to v16 Upgrade 9 1 hour ago Probare con eso El mié., 20 may. 2020 a las 14:05, Juan Pablo Gonzalez (< jpgonzalez@genexus.com>)

franco.sibona

20/05/20 20:25
Logre agregar BasicExternalObjectOffline al SampleModule publicado hoy, y pude compilar , deployar y correr la app android utilizandolo Muchas gracias El mié., 20 may. 2020 a las 14:19, Franco Sibona ()


Back to sd