首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Kivy:在.jar文件中添加add_jars时,我应该使用什么包名?

Kivy:在.jar文件中添加add_jars时,我应该使用什么包名?
EN

Stack Overflow用户
提问于 2017-06-23 06:03:59
回答 2查看 576关注 0票数 2

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

代码语言:javascript
运行
复制
class Test {
    public int test() {
        return 300;
    }
}

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

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

代码语言:javascript
运行
复制
android.add_jars = %(source.dir)s/platforms/android/*.jar

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

代码语言:javascript
运行
复制
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:未找到“测试/测试”类

我认为使用autoclass('test.Test')的包名有问题。我应该用什么名字使事情正常工作呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-10-18 15:02:33

与添加.jar文件不同,添加java源文件更容易,p4a将处理这些源文件,以便在安卓上使用。

1)我们有档案

代码语言:javascript
运行
复制
/java_folder/some/test.java

内容如下:

代码语言:javascript
运行
复制
package some;

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

2)在buildozer.spec中我们添加:

代码语言:javascript
运行
复制
android.add_src = %(source.dir)s/java_folder/

3)在项目中:

代码语言:javascript
运行
复制
autoclass('some.Test')

效果很好。

票数 2
EN

Stack Overflow用户

发布于 2022-05-30 12:09:05

我在你的解决方案中有一些评论:

  1. /java_ => /some/Test.java_=>/
  2. 类测试{ =>公共类测试{

在那之后,一切都是工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44714127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档