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')
的包名称有问题。
我应该用什么名字来使事情有效?
答案 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')
工作正常。