Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

On android, accessing static variables, inherited from a java interface, in nested java classes returns python 'None' in pyjnius. #169

Open
jitendranair opened this issue Jul 25, 2015 · 0 comments

Comments

@jitendranair
Copy link

jitendranair commented Jul 25, 2015

On Android, accessing static variables, inherited from a java interface, in nested java classes returns python 'None'.

  • Ref: Example Java source on gist .
  • Accessing Nested class variable (inherited from interface), 'DeepKlass.VAR1' in pyjnius returns None, instead of 'var1'. (See section below : Android Python Interaction ).
  • Works fine on my Ubuntu 14.04 Desktop. (See section below : Desktop Python Interaction)
  • Env Details: Android version: 4.4.4.
  • Notes : Faced this issue when using android contacts api, it needs to use such static variables.
    (ref: api: ContactsContract.java )

Android Python Interaction

>>> from kivy import platform
>>> from jnius import autoclass, __version__
>>> __version__
'1.1-dev'
>>> platform == "android"
True
>>> DeepKlass = autoclass("OuterKlass$InnerKlass$DeepKlass")
>>> #Works fine
>>> DeepKlass.VAR2
'var2'
>>> #Does NOT work, returns None instead of string "var1
>>> type(DeepKlass.VAR1
... )
<type 'NoneType'>
>>> 

Desktop Python Interaction

>>> from kivy import platform
>>> from jnius import autoclass, __version__
>>> __version__
'1.1-dev'
>>> platform == "linux"
True
>>> DeepKlass = autoclass("OuterKlass$InnerKlass$DeepKlass")
>>> #Works fine
>>> DeepKlass.VAR2
'var2'
>>> #Works fine
>>> DeepKlass.VAR1
'var1'
>>> 

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/24943500-on-android-accessing-static-variables-inherited-from-a-java-interface-in-nested-java-classes-returns-python-none-in-pyjnius?utm_campaign=plugin&utm_content=tracker%2F77133&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F77133&utm_medium=issues&utm_source=github).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants