Kivy:我应该为添加了add_jars的.jar文件使用什么包名?

时间:2017-06-23 06:03:59

标签: kivy pyjnius

1)在我的kivy项目中,我使用以下内容创建了\platforms\android\test.java

class Test {
    public int test() {
        return 300;
    }
}

并将其编译为.jar文件(在同一目录中)。

2)在buildozer.spec我添加了一行:

android.add_jars = %(source.dir)s/platforms/android/*.jar

3)在main.py项目中,我尝试使用它:

import logging
from kivy.utils import platform

if platform == "android":
    from jnius import autoclass, cast

    Test = autoclass('test.Test')
    logging.info(Test().test())

4)apk构建正常,但我收到错误:

  

jnius.jnius.JavaException:未找到类' test / Test'

我假设我使用autoclass('test.Test')的包名称有问题。 我应该用什么名字来使事情有效?

1 个答案:

答案 0 :(得分:0)

不是添加.jar文件,而是更容易添加p4a将在Android上使用的java源文件。

1)我们有文件

/java_folder/some/test.java

以下内容:

package some;

class Test {
    public int test() {
        return 300;
    }
}

2)在buildozer.spec我们添加:

android.add_src = %(source.dir)s/java_folder/

3)在项目中:

autoclass('some.Test')

工作正常。