一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android利用代碼控制設備上其他音樂播放器的方法

Android利用代碼控制設備上其他音樂播放器的方法

2022-03-01 15:22一s獨秀 Android

這篇文章主要給大家介紹了關于Android利用代碼如何控制設備上其他音樂播放器的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

由于最近項目遇到,藍牙手表設備在不配對的情況下監聽按鍵給出相應的控制回應,所以研究了下

網上找了很多不過對于現在來說,很多手機設置沒有反應,這里給出一個比較統一的方法

項目需求如下圖:

Android利用代碼控制設備上其他音樂播放器的方法

項目需求

方法如下:

*這里主要是為了控制的實現其他的不多說,直接上代碼,只是記錄下以后也許還會用到

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
private long eventtime = 0;
private AudioManager vAudioManager = null;
//此處在onCreate方法中初始化
eventtime = SystemClock.uptimeMillis();
vAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
 
 
//這是播放或者暫停
if (vAudioManager.isMusicActive()){
 Toast.makeText(getApplicationContext(), "有音樂在播放---暫停", Toast.LENGTH_SHORT).show();
 pauseMusic();//暫停
}else {
 Toast.makeText(getApplicationContext(), "無音樂在播放--開始", Toast.LENGTH_SHORT).show();
 playMusic();//播放
}

*主要控制代碼

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/**
 * 暫停
 */
private void pauseMusic() {
 if (eventtime<=0)return;
 Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PAUSE, 0);
 downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent);
 sendOrderedBroadcast(downIntent, null);
 
 Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PAUSE, 0);
 upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent);
 sendOrderedBroadcast(upIntent, null);
}
 
/**
 * 播放
 */
private void playMusic() {
 if (eventtime<=0)return;
 Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PLAY, 0);
 downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent);
 sendOrderedBroadcast(downIntent, null);
 
 Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PLAY, 0);
 upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent);
 sendOrderedBroadcast(upIntent, null);
}
 
 
/**
 * 上一曲
 */
private void lastMusic() {
 if (eventtime<=0)return;
 Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
 downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent);
 sendOrderedBroadcast(downIntent, null);
 
 Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_PREVIOUS, 0);
 upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent);
 sendOrderedBroadcast(upIntent, null);
}
 
/**
 * 下一曲
 */
private void nextMusic() {
 if (eventtime<=0)return;
 Intent downIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent downEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MEDIA_NEXT, 0);
 downIntent.putExtra(Intent.EXTRA_KEY_EVENT, downEvent);
 sendOrderedBroadcast(downIntent, null);
 
 Intent upIntent = new Intent(Intent.ACTION_MEDIA_BUTTON, null);
 KeyEvent upEvent = new KeyEvent(eventtime, eventtime, KeyEvent.ACTION_UP, KeyEvent.KEYCODE_MEDIA_NEXT, 0);
 upIntent.putExtra(Intent.EXTRA_KEY_EVENT, upEvent);
 sendOrderedBroadcast(upIntent, null);
}

下面這個是控制系統媒體音量鍵的加減

?
1
2
3
4
5
// 調低音量
vAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_LOWER, AudioManager.FLAG_SHOW_UI);
 
// 調高音量
vAudioManager.adjustStreamVolume(AudioManager.STREAM_MUSIC,AudioManager.ADJUST_RAISE, AudioManager.FLAG_SHOW_UI);

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:https://www.jianshu.com/p/a1a5a02f7c5f

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费理伦片在线观看全网站 | 暖暖视频免费观看视频中国.韩剧 | 大乳一级一区二区三区 | 暖暖视频高清图片免费完整版 | 男人晚上适合偷偷看的污污 | 九九精品成人免费国产片 | 国产成人精品一区二三区2022 | 欧美午夜精品久久久久久黑人 | 2022国产麻豆剧传媒古装 | 久久丫线这里只精品 | 青青热久免费精品视频精品 | 国产一区二区不卡 | 日本三级免费观看 | 韩国伦理hd | 免费一级欧美片在线观免看 | 特黄特色大片免费高清视频 | 亚洲免费精品视频 | 99国产国人青青视频在线观看 | 欧美专区在线观看 | 欧美综合国产精品日韩一 | 日韩毛片免费线上观看 | 边吃胸边膜下刺激免费男对女 | 日本视频在线免费播放 | 精品人伦一区二区三区潘金莲 | 无码任你躁久久久久久久 | 久久久久青草大香线综合精品 | 手机av影院| 91xj视频| a4yy欧美一区二区三区 | 亚洲香蕉伊在人在线观婷婷 | 狠狠色综合久久婷婷色天使 | 亚洲美色综合天天久久综合精品 | 久久婷婷五月免费综合色啪 | 久久精品国产亚洲AV热无遮挡 | 国产99青草全福视在线 | 特黄未满14周岁毛片 | 国产成人精品第一区二区 | 我把寡妇日出水好爽 | 亚洲国产精品综合久久一线 | 亚洲午夜久久久久国产 | 99任你躁精品视频 |