问题标签 [pyjnius]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1090 浏览

java - 如何使用 Pyjnius 正确访问 Android java 类

我很难尝试使用 Pyjnius 访问 Android Java 类“ContactsContract.Intents.Insert”。

我一直在关注这里提供的这个例子:

Pyjnius:http ://kivy.org/planet/2012/08/pyjnius-accessing-java-classes-from-python/

要访问的 Java 类:MediaRecorder

但我真正想使用 Pyjnius 访问的是 Android 中的“ContactsContract.Intents.Insert”,并获取工作代码以向我的 Android 手机添加新联系人。

安卓类:https ://developer.android.com/reference/android/provider/ContactsContract.Intents.Insert.html

这是我到目前为止所拥有的,但我对数组列表感到困惑:

0 投票
1 回答
1007 浏览

python - Kivy 和 android 共享首选项

我正在寻找一种从 Kivy 框架将设置持久存储在 android 设备上的方法。

我发现 Kivy 文档,整体信息丰富,在这个特定领域含糊不清。它提到了三种方法(抱歉,没有足够的声誉来提供 clicable 链接,提供到kivy.org的相对路径,如果有人可以修复这些链接,我会很高兴):

  1. [存储] ./docs/api-kivy.storage.html#module-kivy.storage
  2. [设置] ./docs/api-kivy.uix.settings.html
  3. [配置] ./docs/api-kivy.config.html

除此之外,我知道我可以通过 pickle 或数据库将数据存储在文件中,但我想特别使用sharedpreferences,或者至少使用任何 Android/Kivy 特定的持久存储。

  1. 但是,我找不到任何比较或解释它们有何不同以及如何使用它们。任何人都可以阐明一下,已经使用过它们了吗?

  2. 实际上,我 80% 确定这种方法都没有使用 Android 的共享首选项,因此我考虑使用 jnius (4),并且我已经尝试过(方法 1,2/3?,4),基于简单的 hello world 示例:

    /li>

这是logcat的结果

请注意,没有调用 4、5 个“错误消息”,所以理论上它们应该可以工作,但是第二次启动我得到了同样的错误。我已经没有办法破解它了。

0 投票
1 回答
932 浏览

java - 如何为pyjnius选择java版本

我已经Java 1.6.0_17安装在/usr/local/bin. 我的Java程序是用1.7.0_11.

pyjnius通话失败 X = autoclass('HelloWorld')

HelloWorld.java用 编译时1.6,一切正常。

我无法pyjnius1.7.

JAVA_HOME在导入之前尝试过设置jnius

我还设置并JAVA_HOME在我的..bash_profile/usr/local/pkgs/jdk-1.7.0.11/binPATH

0 投票
1 回答
1258 浏览

android - Android 通知到 kivy 中的通知栏

我想在通知栏中的android上创建一个通知。当我单击通知时,我想打开我的 kivy 应用程序。通知应从后台服务发出。

我怎么能在kivy中做到这一点?我更喜欢 pyjnius 和 java,但 plyer 还可以。

0 投票
1 回答
1613 浏览

python - Kivy 使用预填充的联系人字段启动 android 意图

我想启动一个 android 添加联系人活动。但我也想启动联系人的意图插入操作。我的代码有什么问题。

只是我想开始添加联系人活动,其中包含已添加的电话和号码等预填充数据。

0 投票
1 回答
561 浏览

android - 手机锁定时,使用部分唤醒锁和服务不会使应用程序运行

我在我的 kivy 应用程序中使用部分唤醒锁定和服务,以便在我锁定屏幕时它可以运行。我的服务使手机在打开开关时每隔一秒振动一次,而应用程序仅在打开开关时才尝试获取部分唤醒锁。但是,这似乎不起作用,因为当我锁定手机时,手机每隔一秒就会停止振动。这是我的 main.py。

我尝试使用部分唤醒锁来在手机锁定时保持手机的 CPU 运行。我猜手机锁定时停止振动的原因是锁定时CPU关闭,并且手机使用CPU来振动。另外,当我解锁手机并重新打开应用程序时,开关仍然在我离开时的位置,因为我将 on_pause 定义放在代码中,但手机不再振动。这让我相信,由于某种原因,代码没有获得部分唤醒锁定,并且当手机被锁定时 CPU 会关闭。这个 main.py 和 service/main.py 能够成功地传达开关的位置。然而,当这个 main.py 收到消息时,wakelock.acquire() 似乎并没有让手机的 CPU 保持开启状态。

手机锁定时是否需要开启 CPU 才能保持振动?如果是这样,那么在我锁定它后,还有其他方法可以让 CPU 保持开启并让手机振动吗?我是否正确使用 jnius 和 wakelock.acquire/release?

如果手机在锁定时不需要CPU保持振动,那么还有什么导致手机在锁定时停止振动,我需要什么才能让手机在锁定后保持振动?

谢谢您的帮助。

0 投票
1 回答
243 浏览

android - Kivy,AdBuddiz 引发错误:__javaclass__ 定义缺失

我正在尝试使用 kivy 构建我的应用程序,到目前为止它看起来很棒。使用 buildozer 编译和运行一切都很好。

根据本网站,我正在尝试使用 AdBuddiz 将广告合并到我的应用中

https://github.com/kivy/kivy/wiki/AdBuddiz-Android-advertisements-integration-for-Kivy-apps

我被困在第 4 步,因为它给出的错误是

jnius.jnius.JavaException:缺少javaclass定义

我通过下载这个https://github.com/kivy/pyjnius安装了 jnius 并使用了命令:sudo python setup.py install

如果您能帮助我修复此错误或帮助我理解错误,我将不胜感激。

谢谢你。

0 投票
1 回答
1100 浏览

java - Python 与 Java,PyJNIus 安装

为了在 Python 中使用带有绑定的 Java,我正在安装以下内容: https ://github.com/kivy/pyjnius

我收到了这个错误:似乎试图将 C++ 文件头编译到 Java_HOME.... 中,这看起来很奇怪:

0 投票
1 回答
4132 浏览

java - 在 Python 中实际使用 Java 类/JAR?

我花了很多时间寻找这个并探索了许多解决方案。

这与这个线程有关。 从 Python 调用 Java

最后,经过测试:

Pyjnius:无法在 Windows 中安装。

Py4J:可以安装在windows上,但是使用Gateway有点重。

JPype: Python 3 安装在 5 分钟内,可以毫无问题地加载 50Mo JAR。好消息是语法与 Python 语法完全合并... https://github.com/tcalmant/jpype-py3

只是想知道,是否有人在 Python 中开发了真实世界的 Java 包装应用程序(即在生产服务器上运行)和大尺寸 JAR?

0 投票
2 回答
1404 浏览

android - Android 应用程序检查 wifi 是否启用

我一直在尝试创建一个 Android 应用程序来检查手机的 wifi 是否打开或关闭。我想要做的是,如果 WiFi 开启,那么它会显示一个白色的 BoxLayout,如果它没有开启,那么它会显示一个弹出窗口。我是 Android 开发的新手,我迷上了 Kivy,因为它的简单性和我对 Python 的热爱。我尝试关注 Pyjnius 文档,但无法运行该应用程序。所以我会在这里发布代码:

我应该对 builder.spec 文件中的权限进行任何更改吗?截至目前,它只是互联网。