姬長信(Redy) 大佬早!

源码

安卓后台保活黑科技 播放无声音乐

1、准备一段无声的音频,新建一个播放音乐的Service类,将播放模式改为无限循环播放。在其onDestroy方法中对自己重新启动。

public class PlayerMusicService extends Service {    private final static String TAG = PlayerMusicService.class.getSimpleName();    private MediaPlayer mMediaPlayer;    @Nullable
    @Override
    public IBinder onBind(Intent intent) {        return null;
    }    @Override
    public void onCreate() {        super.onCreate();
        Logger.d(TAG, TAG + "---->onCreate,启动服务");
        mMediaPlayer = MediaPlayer.create(getApplicationContext(), R.raw.silent);
        mMediaPlayer.setLooping(true);
    }    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {        new Thread(new Runnable() {            @Override
            public void run() {
                startPlayMusic();
            }
        }).start();        return START_STICKY;
    }    private void startPlayMusic() {        if (mMediaPlayer != null) {
            Logger.d(TAG, "启动后台播放音乐");
            mMediaPlayer.start();
        }
    }    private void stopPlayMusic() {        if (mMediaPlayer != null) {
            Logger.d(TAG, "关闭后台播放音乐");
            mMediaPlayer.stop();
        }
    }    @Override
    public void onDestroy() {        super.onDestroy();
        stopPlayMusic();
        Logger.d(TAG, TAG + "---->onCreate,停止服务");        // 重启自己
        Intent intent = new Intent(getApplicationContext(), PlayerMusicService.class);
        startService(intent);
    }
}

2、 在保活的DownloadServie服务类的onCreate方法中对PlayerMusicService进行启动

 Intent intent = new Intent(this, PlayerMusicService.class);
 startService(intent);

3、在Manifest文件中进行注册

  <service
            android:name=".service.PlayerMusicService"
            android:enabled="true"
            android:exported="true"
            android:process=":music_service" />
(0)

本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/anzhuohoutaibaohuoheikeji-bofangwushengyinle.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:12 月 7, 2018 at 02:14 上午

热评文章

发表回复

[必填]

我是人?

提交后请等待三秒以免造成未提交成功和重复