Recibo un error de pyjnius con muchos accesos a métodos de clase que espero que funcionen:
Traceback (most recent call last):
File "jnius/jnius_export_class_pxi", line 752, in jnius.jnius.JavaMethod.__call__
File "jnius/jnius_export_class.pxi", line 699, in jnius.jnius.JavaMethod.ensure_method
jnius.jnius.JavaException: Unable to find a None method!
Pasos para reproducir:
main.py
:from jnius import autoclass
python_activity = autoclass('org.kivy.android.PythonActivity')
window = python_activity.getWindow()
window.setSoftInputMode(16) # SOFT_INPUT_ADJUST_RESIZE
Paquete como .apk
:
p4a apk --arch=armeabi-v7a --name test --package com.example.test --version 1 --requirements=kivy,python2 --private .
(o python 3, es posible que deba agregar argumentos api y/o ndk api si no están configurados en su ruta)
Ejecute y espere hasta que finalice instantáneamente, y luego verifique logcat. Verás esto:
Traceback (most recent call last):
File "jnius/jnius_export_class_pxi", line 752, in jnius.jnius.JavaMethod.__call__
File "jnius/jnius_export_class.pxi", line 699, in jnius.jnius.JavaMethod.ensure_method
jnius.jnius.JavaException: Unable to find a None method!
Ok, realicé una buena depuración de impresiones antiguas y la línea exacta que falla es window = python_activity.getWindow()
, o en un contexto más amplio:
Sin embargo, no puedo pensar en un caso en el que el Activity
(del que se derivan PythonActivity
/ SDLActivity
) no tenga getWindow()
como se documenta aquí: https://developer.android.com/reference/android/app/Activity#getWindow ()
¿Es esto un error entonces?
FWIW, se encontró con el mismo error con https://github.com/kivy/python-for-android/pull/1772 . ¿Alguien tiene idea de si se trata de un error de Pyjnius o de un error de usuario de mi parte?
El error aquí es llamar al método en la clase de Actividad, no en la instancia, se puede acceder a la instancia a través del atributo mActivity
.
aquí hay un ejemplo de código de trabajo https://gist.github.com/47b7b18855b38de3730e081682c558ce
Esperemos que logre lo que está tratando de hacer :).
cerrando como si no fuera un error en pyjnius, comente o vuelva a abrir si cree que esto está mal.
@tshirtman :globo: :tada: gracias :corazon:
Comentario más útil
cerrando como si no fuera un error en pyjnius, comente o vuelva a abrir si cree que esto está mal.