python - 在 Python/Kivy 中,audio_ffpyplayer 不能在 android 上播放
问题描述
所以我想使用audio_ffpyplayer
而不是audio_sdl2
. 当我将其转换为apk
with时,在 pc 上的声音效果很好buildozer
,在手机(android)上音频不起作用。应用程序正在运行,但没有播放音频。我想在单击按钮时播放音频。这只是“按钮点击音效”。这是我的python
代码:
import os
os.environ["KIVY_AUDIO"] = "ffpyplayer"
import kivy
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader
class MainWidget(FloatLayout):
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.path = "sounds/click_effect.wav"
self.song = SoundLoader.load(self.path)
def music_play(self):
click = SoundLoader.load(self.path)
if click:
click.play()
class MyApp(App):
pass
myapp = MyApp()
myapp.run()
这是我的kivy
代码:
MainWidget:
<MainWidget>:
Button:
text: "Click"
on_press: root.music_play()
这是我的buildozer.spec
(我最近添加了jnius
。有人在这个网站上告诉我使用它。有或没有jnius
它仍然不起作用):
# (list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas,wav
#source.include_patterns = assets/*,images/*.png
source.include_patterns = sounds/*.wav
# comma separated e.g. requirements = sqlite3,kivy
requirements = python3,kivy==2.0.0,ffpyplayer,jnius
调试错误:
[WARNING] [Audio ] Unable to find a loader for </data/data/org.test.test/files/app/sounds/click_effect.wav>
解决方案
推荐阅读
- reactjs - 1.8mb 对 Webpack 是好还是坏?
- javascript - 使用 Wikipedia API 获取表格元素 (javascript/jQuery)?
- c++ - 从文本文件 C++ 问题中读取输入
- c - N Queen Solve in C,用文件中的数据替换定义
- reactjs - Reactjs - div的背景图像不起作用
- python - 自定义对象训练张量流错误
- javascript - Javascript 解密 C# AES 加密
- angular - 角度 5 中的发布错误 请求的资源上不存在“Access-Control-Allow-Origin”标头。
- c# - 在 ListBox 中显示所有正在运行的应用程序并在 c# 中单击按钮时将其杀死
- python - 根据用户输入在多行中制作带有 x 和空格的图片