android - 从 Activity 调用服务方法

标签 android

在我的 Activity 中我有:

play.setOnClickListener(new View.OnClickListener() {

        @Override                           
        public void onClick(View v) {

        service.playSong(MEDIA_PATH);

        }
    });

这是在服务中:

void playSong(String file) {
        try {

                mp.reset();
                System.out.println(file+songs.get(currentPosition));
                mp.setDataSource(file+ songs.get(currentPosition));

                mp.prepare();
                mp.start();

                mp.setOnCompletionListener(new OnCompletionListener() {

                     public void onCompletion(MediaPlayer arg0) {
                             nextSong();
                     }
             });

        } catch (IOException e) {
                Log.e(getString(R.string.app_name), e.getMessage());
        }
}

正如您在我的 Activity 中从上面的代码中看到的那样,当我单击播放按钮时,我将路径传递到服务中以播放音乐,但它崩溃了怎么了?

最佳答案

在运行之前,您需要与 Service 绑定(bind)。

检查此链接:

关于android - 从 Activity 调用服务方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9365792/

相关文章:

java - Android 按钮背景图像更改回 XML 中的状态

java - TelephonyManager 结束通话的替代方法

android - Espresso 自定义 ViewMatcher 不匹配描述未出现在日志中

android - Android 上的 DCIM 目录路径 - 返回值

android - 无法在 Wear OS Samsung Galaxy Watch 4 上请求蓝牙权限

android - Dagger 2 示例

android - 允许用户在 android 调查/数据收集应用程序中创建表单

java - 使用补间动画缩小尺寸后,imageview 单击监听器仍然有效

android - 在 Android 上使用 Expo 设置排毒

android - Android和OpenCV:Utils.bitmapToMat崩溃