【发布时间】:2018-12-06 11:29:29
【问题描述】:
在 Android 设备上运行 Kivy 应用程序时,有没有办法在加载时播放音频?即在 buildozer.spec 文件中定义的 presplash image 显示在屏幕上时播放音频。
【问题讨论】:
标签: android python audio kivy buildozer
在 Android 设备上运行 Kivy 应用程序时,有没有办法在加载时播放音频?即在 buildozer.spec 文件中定义的 presplash image 显示在屏幕上时播放音频。
【问题讨论】:
标签: android python audio kivy buildozer
没有预先构建的方法可以做到这一点。可以通过编辑管理应用程序加载的 Java 代码,在设置预启动图像的相同位置来实现。
【讨论】:
正如@inclement 回答的那样,这是通过编辑在显示预启动图像时执行的 Java 代码。方法很简单。
这是修改后的 onCreate() 方法,通过传递音频在设备中的位置来播放音频:
@Override
protected void onCreate(Bundle savedInstanceState) {
Log.v(TAG, "My oncreate running");
resourceManager = new ResourceManager(this);
Log.v(TAG, "About to do super onCreate");
super.onCreate(savedInstanceState);
Log.v(TAG, "Did super onCreate");
this.mActivity = this;
Toast.makeText(this, "Working on the Kivy Project in Android Studio", Toast.LENGTH_LONG).show();
this.showLoadingScreen();
new UnpackFilesTask().execute(getAppRoot());
MediaPlayer music = new MediaPlayer();
try {
music.setDataSource("/storage/emulated/0/music.mp3");
music.prepare();
music.start();
} catch (IOException e) {
e.printStackTrace();
}
}
【讨论】: