แอปพลิเคชันใดที่กำหนดให้กับคำสั่ง bluetooth AVRCP


18

ความเป็นมา:ฉันมีชุดหูฟังบลูทู ธ A2DP / AVRCP ( Nokia BH-505 ) ซึ่งฉันใช้เพื่อฟังพอดคาสต์และเพลง แน่นอนฉันฟังเหล่านี้ด้วยแอพที่แตกต่างกัน ชุดหูฟังบลูทู ธ มีปุ่ม "คำสั่ง" (AVRCP) บางปุ่มซึ่งเกี่ยวข้องกับเสียง - โดยเฉพาะ: "แทร็กถัดไป", "แทร็กก่อนหน้า" และ "เล่น / หยุดชั่วคราว"

ขณะนี้เมื่อใดก็ตามที่ฉันกดคำสั่งใด ๆ หนึ่งในเครื่องเล่นเพลงที่ฉันติดตั้ง ( Meridian ) จะได้รับคำสั่งเสมอ - แม้ว่าจะไม่ได้ใช้งานก็ตาม ดังนั้นเมื่อฉันคลิก "play / pause" ตั้งใจที่จะหยุดพอดคาสต์ ( DoggCatcher ) ชั่วคราวMeridian จะเปิดใช้งานแทนและเริ่มเล่นเพลงพร้อมกับพอดคาสต์

ผู้เล่นทั้งสองถูกตั้งค่าให้ใช้งานชุดหูฟัง: DoggCatcher เปิดใช้งาน "Bind to headset" และ Meridian ได้เปิดใช้งาน "ปุ่มชุดหูฟัง" ขณะนี้ฉันกำลังใช้ Android 2.2.1 ในสต็อกที่ยังไม่ได้จดทะเบียนบน GT-S5570 แต่อาจจะทำการรูทและอัพเกรดเป็น 2.3 CyanogenMod (หรือเช่นนั้น) ในอนาคต

ไม่สนใจรายละเอียดคำถามของฉันเกี่ยวกับเรื่องนี้เป็นเรื่องทั่วไปมากขึ้น:

  • Android ตรวจสอบว่าแอปใดตอบสนองต่อคำสั่งเหล่านี้ได้อย่างไร ฉันสนใจแม้กระทั่งในคำตอบทางเทคนิค

ในทางปฏิบัติฉันสนใจ:

  • ฉันต้องเล่นซอกับการตั้งค่าแอปพลิเคชันแต่ละรายการเพื่อพิจารณาว่าแอปพลิเคชันใดใช้คำสั่งหรือมีวิธีทั่วไปในการพิจารณาสิ่งนี้หรือไม่?
  • มีวิธีกำหนดค่านี้เพื่อให้แอปพลิเคชันที่ใช้งานจริงจะได้รับลำดับความสำคัญโดยอัตโนมัติหรือไม่ (ตามที่ถูกถามส่วนหนึ่งในคำถามอื่น )

คำถามนี้แตกต่างจากคำถามที่คล้ายกันอย่างไร:


1
ฉันจัดการเพื่อค้นหาข้อมูลที่ดีบางอย่างที่เกี่ยวข้องกับเรื่องนี้จากบล็อกของนักพัฒนา Android - พูดคุยเกี่ยวกับวิธีการที่เหมาะสมที่แอปพลิเคชันควรใช้ใน 2.2: "การอนุญาตให้แอปพลิเคชันเล่นได้ดี (r) ด้วยกัน: การจัดการปุ่มควบคุมระยะไกล"
Ilari Kajaste

ในปี 2559 นี้ยังคงเป็นปัญหาอยู่ - .- การย้ายจาก iOS นี่อาจเป็นส่วนที่รำคาญที่สุดของ android สำหรับฉันจนถึง: /
Squazz

คำตอบ:


11

media-button-routerซึ่งถูกกล่าวถึงแล้วในคำถามที่เชื่อมโยงของคุณพยายามหาว่าแอปใดกำลังเล่นเพลงอยู่และส่งเหตุการณ์ AVRCP ไปให้ นอกจากนี้ยังมีรายการแอพทั้งหมดที่ติดตั้งซึ่งประกาศว่าจะฟังเหตุการณ์ AVRCP

อะไรที่ทำให้ AVRCP ซับซ้อน: แอพบางตัวเช่นMusic Unlimited ของ Sonyนั้นดูเหมือนจะไม่ประกาศandroid.intent.action.MEDIA_BUTTONออกมา ด้วยเหตุผลนี้ (หรืออาจเป็นเหตุผลอื่น) พวกเขาไม่สามารถควบคุมผ่านสื่อ - ปุ่ม - เราเตอร์ ฉันรู้ว่าเช่น Music Unlimited สามารถควบคุมได้ผ่าน AVRCP ตั้งแต่ฉันอ่านมันในความคิดเห็นของผู้ใช้และฉันก็สามารถทำให้มันทำงานครั้งเดียวแต่น่าเสียดายที่มันไม่สามารถทำซ้ำได้ ดังนั้นในกรณีเหล่านั้นดูเหมือนว่าเราจะต้องรอการอัปเดตของแอปด้วยการใช้งานการจัดการเหตุการณ์ AVRCP ที่สะอาด

ตามวิกิของ media-button-router "Media Button Intent ทำได้ผ่านการออกอากาศตามคำสั่งและแต่ละแอพจะตั้งค่าเป็นลำดับความสำคัญของการรับ" ดังนั้นอาจเป็นไปได้ที่จะเขียนแอปที่แสดงลำดับความสำคัญของพวกเขาและในทางกลับกันจะช่วยให้คุณกำหนดแอปพลิเคชันที่จะเริ่มต้น อย่างไรก็ตามฉันไม่รู้เกี่ยวกับแอพดังกล่าว



0

บางทีนี่อาจช่วยได้บ้าง:

Samsung S5 -> ตัวรับสัญญาณ Bluetooth + ที่เสียบหูโทรศัพท์

ฉันใช้ Samsung S5 เป็นครั้งแรกด้วยแอพ 7digital เพื่อดาวน์โหลดและเล่นเพลง จากนั้นฉันก็เปลี่ยนและใช้ Cloudplayer แต่ทุกครั้งที่ Clouplayer กำลังเล่นและฉันกดปุ่มหยุด / เล่นบนตัวรับสัญญาณบลูทู ธ ของฉันแอพ 7digital ของฉันจะเริ่มเล่นเพลง ฉันไม่สามารถเปลี่ยนการตั้งค่าใด ๆ เพื่อเปลี่ยนการเล่นบลูทู ธ / หยุดชั่วคราวไปสู่ ​​Cloudplayer ฉันลบเพลง 7digital ที่ดาวน์โหลดทั้งหมดแล้วลองอีกครั้ง แก้ไขปัญหา! เล่น / หยุดชั่วคราวเชื่อมโยงกับ Cloudplayer ทันที


0

ไม่มีปัญหากับอุปกรณ์ BT ของคุณ เมื่อจับคู่กับโทรศัพท์ของคุณชุดหูฟังบลูทู ธ จะเล่นสตรีม A2DP ที่ทำงานอยู่ซึ่งเริ่มต้นจากโทรศัพท์มือถือ ถ้ามันเป็นเครื่องเล่นสื่อมาตรฐานบนโทรศัพท์ของคุณมันสามารถตอบสนองต่อคำสั่งควบคุม AVRCP ทั้งหมดเช่น play pause ข้าม, fw เป็นต้นตอนนี้เมื่อคุณเล่นอะไรบางอย่างบนเว็บหรือเครื่องเล่นอื่น ๆ ที่ไม่ได้ใช้ตัวควบคุมเช่น AVRCP ชุดหูฟัง BT ยังคงเป็นสตรีม A2DP ที่กำลังมา มันจะส่งข้อความควบคุม AVRCP ไปยังโทรศัพท์ของคุณ ตอนนี้เป็นโทรศัพท์ของคุณที่ควรกำหนดเส้นทางคำสั่งเหล่านี้ไปยังแอพที่เกี่ยวข้องในกรณีส่วนใหญ่ไปยังแหล่งการสตรีม A2DP ที่ใช้งานอยู่หรือในกรณีของคุณโทรศัพท์ของคุณยังคงส่งต่อคำสั่ง AVRCP ไปยังเครื่องเล่นเพลงเริ่มต้น

ทางออกที่ดีที่สุดของคุณคือลองกำหนดค่ามือถือของคุณหากแหล่งที่คุณเล่นไม่รองรับการควบคุม AVRCP หากไม่เป็นเช่นนั้นคุณจะไม่สามารถทำอะไรได้เลย หากเป็นเช่นนั้นแน่นอนว่า Mobile ควรอนุญาตให้คำสั่ง AVRCP เหล่านี้ได้รับการจัดการโดยแหล่งสตรีมมิ่ง A2DP ที่ใช้งานอยู่ของคุณ


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.