Recebo um erro pyjnius com muitos acessos ao método de classe que espero funcionar:
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!
Passos para reproduzir:
main.py
:from jnius import autoclass
python_activity = autoclass('org.kivy.android.PythonActivity')
window = python_activity.getWindow()
window.setSoftInputMode(16) # SOFT_INPUT_ADJUST_RESIZE
Pacote como .apk
:
p4a apk --arch=armeabi-v7a --name test --package com.example.test --version 1 --requirements=kivy,python2 --private .
(ou python 3, você pode precisar adicionar argumentos api e/ou ndk api se eles não estiverem definidos em seu caminho)
Execute e espere até que ele termine instantaneamente e, em seguida, verifique o logcat. Você verá isso:
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, eu fiz uma boa e velha depuração de impressão e a linha exata de falha é window = python_activity.getWindow()
, ou em um contexto maior:
No entanto, não consigo pensar em um caso em que o Activity
(do qual PythonActivity
/ SDLActivity
deriva) não teria getWindow()
conforme documentado aqui: https://developer.android.com/reference/android/app/Activity#getWindow ()
Isso é um bug então?
FWIW, encontrou o mesmo erro com https://github.com/kivy/python-for-android/pull/1772 . Alguém tem uma idéia se isso é um bug pyjnius ou um erro do usuário do meu lado?
O erro aqui é chamar o método na classe Activity, não na instância, a instância é acessível através do atributo mActivity
.
aqui está um exemplo de código de trabalho https://gist.github.com/47b7b18855b38de3730e081682c558ce
espero que consiga o que você está tentando fazer :).
fechando como não é um bug no pyjnius, por favor comente ou reabra se você acha que isso está errado.
@tshirtman :balloon: :tada: obrigado :heart:
Comentários muito úteis
fechando como não é um bug no pyjnius, por favor comente ou reabra se você acha que isso está errado.