Android: ใช้การรัน MediaPlayer

ฉันกำลังพัฒนาแอป Android และในแอปนี้ฉันมี Android MediaPlayer และฉันอยากถามว่าฉันสามารถเข้าถึง MediaPlayer ที่ทำงานอยู่ด้วย MediaPlayer นี้ได้หรือไม่ ซึ่งเริ่มต้นโดยแอปอื่น

ตัวอย่างเช่น ฉันเริ่มเพลงด้วยแอป Android Music และผู้ใช้เปิดแอปของฉัน มีวิธีการเข้าถึงและควบคุมการสตรีมของ Android Music นี้หรือไม่? ฉันสามารถหยุดเพลงด้วย stop() และเริ่มมัน start() และฟังก์ชั่นอื่น ๆ ทั้งหมดได้หรือไม่?


person Dominik Dassow    schedule 11.08.2013    source แหล่งที่มา


คำตอบ (1)


หากคุณถามว่ามีวิธีควบคุม Media Player ที่ทำงานอยู่ในแอปอื่นจากแอปของคุณหรือไม่ แสดงว่าไม่ใช่ ไม่มีทางที่จะทำเช่นนั้น

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

person William Morrison    schedule 11.08.2013
comment
โอเค แล้วถ้าแอปอื่นนี้เป็นแอปของฉันเองจะเป็นอย่างไร? ในกรณีของฉัน แอปของฉันเริ่มสตรีมใน MediaPlayer และเมื่อฉันปิดแอปและต้องการเปิดแอปอีกครั้ง สตรีมจะดำเนินต่อไปแต่ไม่ดำเนินการต่อในแอป แอปจะรีสตาร์ท (ใช่ มันเป็นข้อบกพร่อง แต่ฉันไม่ได้รับวิธีแก้ปัญหา) และเนื่องจากข้อผิดพลาดนี้ ฉันต้องการให้แอปไม่สร้าง MediaPlayer ใหม่ในเมธอด onCreate() และรับสตรีมที่ยังทำงานอยู่ คุณรู้ว่าฉันหมายถึงอะไร? - person Dominik Dassow; 11.08.2013
comment
ฉันคิดว่าฉันเข้าใจ. ไม่สำคัญว่าจะเป็นแอปของคุณหรือไม่ก็ตาม หากระบบเริ่ม 2 แอปของคุณ คุณจะยังคงไม่สามารถสื่อสารระหว่างแอปเหล่านั้นได้อย่างง่ายดาย เป็นไปได้ แต่นั่นไม่ใช่วิธีแก้ปัญหาที่ดีที่นี่ วิธีแก้ไขคือแก้ไขข้อบกพร่องที่ทำให้หลายอินสแตนซ์ทำงาน ตรวจสอบลิงก์นี้เพื่อรับความช่วยเหลือ - person William Morrison; 12.08.2013
comment
โอเคขอบคุณ. แต่ launchMode singleTask และ singleInstance จะสร้างงานใหม่เมื่อเปิดตัวใช่ไหม และนี่ก็นำมาซึ่งปัญหาแบบเดียวกับที่เคยมีอยู่แล้วใช่ไหม? ฉันเห็นภาพนี้ 3.bp.blogspot com/_JHMkMKLWbtQ/TRjJhg0y6TI/AAAAAAAH3U/ หรือฉันเข้าใจผิดไป? - person Dominik Dassow; 12.08.2013