Apple Music ऐप को खुलने से रोकना
(lowtechguys.com)- Music Decoy एक ऐसा ऐप है जो एक चलती हुई process के रूप में मौजूद रहता है, ताकि गलती से ▶ Play दबाने पर सिस्टम का Music ऐप न खुले
- यह बैकग्राउंड में बिल्कुल कोई काम नहीं करता, बल्कि Music ऐप के समान bundle identifier का उपयोग करके सिस्टम को यह मानने देता है कि Music ऐप पहले से चल रहा है
- v1.1 से mediaAppPath सेटिंग के जरिए ▶ Play इनपुट पर Spotify जैसे किसी दूसरे ऐप को लॉन्च करने के लिए कॉन्फ़िगर किया जा सकता है
- Music ऐप का अपने-आप खुलना कीबोर्ड पर ▶ Play दबाने, Bluetooth headset कनेक्ट होने के बाद playback command भेजने, या कॉल समाप्त होने के बाद headset के call mode से music mode में बदलने पर हो सकता है
rcdplayback event के समय अगर कोई मौजूदा audio playback ऐप पाता है तो उसी ऐप को कमांड भेजता है, और अगर नहीं पाता तो सिस्टम Music ऐप को चलाता है; daemon को disable करने पर कीबोर्ड media playback control भी बंद हो जाता है
Music Decoy
-
डाउनलोड, सोर्स देखें,
$brew install music-decoyइंस्टॉल कमांड उपलब्ध -
Music ऐप खुलने से रोकना
- जब तक Music Decoy चल रहा है, गलती से ▶ Play दबाने पर भी सिस्टम Music ऐप नहीं खुलेगा
- ऐप बैकग्राउंड में बिल्कुल कोई काम नहीं करता, और Music ऐप के समान bundle identifier वाली एक चलती हुई process के रूप में मौजूद रहता है
-
यह कैसे काम करता है
- bundle identifier
com.apple.Musicका उपयोग करके सिस्टम को यह तय करने देता है कि Music ऐप पहले से चल रहा है
- bundle identifier
-
सेटिंग
- v1.1 से ▶ Play बटन दबाने पर किसी दूसरे ऐप को लॉन्च करने के लिए Music Decoy को कॉन्फ़िगर किया जा सकता है
- Spotify उदाहरण सेटिंग कमांड:
defaults write com.lowtechguys.MusicDecoy mediaAppPath /Applications/Spotify.app - सेटिंग रीसेट कमांड:
defaults delete com.lowtechguys.MusicDecoy mediaAppPath
-
बंद करने का तरीका
- Dock icon और menu bar icon नहीं हैं, इसलिए इसे बंद करने के लिए नीचे दिए गए तरीकों में से एक का उपयोग करना होगा
- Activity Monitor खोलें, Music Decoy ढूंढें, फिर ऊपर ❌ बटन चुनें
- Terminal में
killall 'Music Decoy'चलाएँ
- Dock icon और menu bar icon नहीं हैं, इसलिए इसे बंद करने के लिए नीचे दिए गए तरीकों में से एक का उपयोग करना होगा
अपने-आप लॉन्च होने की शर्तें, कारण, और विकल्प
-
Music अपने-आप कब खुलता है?
- जब कीबोर्ड का ▶ Play key दबाया जाता है और कोई दूसरा ऐप audio नहीं चला रहा होता
- जब Bluetooth headset कनेक्ट होता है और playback command भेजता है
- जब कॉल खत्म होने पर Bluetooth headset call mode से music mode में बदलता है
-
ऐसा क्यों होता है?
rcdRemote Control Daemon का संक्षिप्त नाम है, और यह media key handling के लिए जिम्मेदार daemon है- जब playback event होता है,
rcdयह जांचता है कि कोई ऐप अभी audio चला रहा है या नहीं - अगर कोई audio playback ऐप है, तो यह उसी ऐप को playback command भेजता है; अगर नहीं है, तो सिस्टम Music ऐप को चलाता है
- इस daemon को disable करने का तरीका है, लेकिन इससे कीबोर्ड से media playback control करने की सुविधा भी साथ में disable हो जाती है
-
विकल्प
- StackExchange उत्तर के अनुसार, यही असर पाने के कुछ और तरीके भी मौजूद हैं
launchctl unload -w /System/Library/LaunchAgents/com.apple.rcd.plist- समस्या: Play बटन पूरी तरह disable हो जाता है
- noTunes चल रहे ऐप्स को detect करता है और Music खुलते ही उसे तुरंत बंद कर देता है
- समस्या: यह बैकग्राउंड में बहुत थोड़ा CPU उपयोग करता है, हालांकि running app detection बहुत हल्का काम है
1 टिप्पणियां
Hacker News टिप्पणियाँ
यह वाकई बहुत चतुर है कि ऐप बैकग्राउंड में कुछ किए बिना, सिर्फ Music ऐप के समान bundle identifier वाले एक रनिंग process के रूप में मौजूद रहकर काम करता है
इस तरह के low-code/no-code समाधान में जो सुंदरता होती है, वह सिस्टम की बहुत गहरी समझ से आती है। आपको यह जानना पड़ता है कि macOS में play बटन दबाने पर ठीक-ठीक क्या होता है, bundle identifier कैसे काम करता है, और अंत में नतीजा लगभग बिना कोड वाला सिर्फ एक “collision” होता है — यही इसकी खूबसूरती है
वैसे, इस तरह की समस्या में coding agents कमजोर पड़ते हैं। आज का Codex शायद एक ऐसा over-engineered ऐप बना दे जो loop में Music ऐप के लॉन्च होने पर नज़र रखे और उसे मारता रहे
अगर आप कहें, “Apple Music ऐप को लॉन्च होने से रोक दो”, तो ज़्यादातर लोग जिस तरह करेंगे, उसी तरह वह भी शायद monitor करके terminate करने वाले रास्ते पर जाएगा। लेकिन अगर आप कहें, “जाँच करके बताओ कि Apple Music क्यों लॉन्च होता है”, तो जाँच के नतीजे के आधार पर user जल्दी समझ सकता है कि Music से टकराने वाला no-code ऐप बनाना ही सबसे अच्छा हल है
info.plistमें BundleIdentifier कोcom.apple.systempreferencesमें बदल दिया और अपने developer certificate से.appपर sign करके उसे bypass कर लियापकड़े जाने तक यह काफ़ी मज़ेदार था
अब भी यक़ीन नहीं होता कि Apple ने iTunes को हटा दिया
पहले मैं अपनी पूरी digital music library iTunes में रखता था, जिसमें ज़्यादातर गाने CD से खुद rip किए हुए थे, लेकिन iTunes से खरीदे हुए albums और TV shows भी थे। जब Apple ने iTunes को पूरी तरह छोड़कर Mac OS से हटा दिया और उसकी जगह Apple Music जैसी चीज़ रख दी, तभी मैंने सोचा कि अब उन पर दोबारा भरोसा नहीं करूँगा
कुछ समय तक मैंने एक अच्छा MP3 player ढूँढा, AIMP भी इस्तेमाल किया, लेकिन अब सोच रहा हूँ कि AI की मदद से अपने interface वाला एक local file-based player खुद बना लूँ। मुझे streaming न चाहिए और न ही पसंद है। शायद मैं iTunes पर albums खरीदता रहता, लेकिन अब CD खरीदना बेहतर लगता है
मैंने पिछले साल का ज़्यादातर समय इसी तरह इस्तेमाल किया, cloud features बंद रखकर अपना सारा local music Apple Music में डाला, फिर पुराने iPod की तरह cable से iPhone में sync किया, और यह अब भी ठीक से काम करता था
Apple Music की subscription लिए बिना भी मैं अपनी पूरी digital music library iTunes/Music में रखकर पहले की तरह इस्तेमाल कर रहा हूँ
मैं built-in utility
hidutilसे F3~F9 keys को अपनी पसंद की keys पर remap करके इस्तेमाल करता हूँF3/F4 को keyboard backlight brightness के लिए, और F5~F9 को सामान्य function keys में बदल दिया। इस पोस्ट में उपयोगी जानकारी काफ़ी है: https://news.ycombinator.com/item?id=35555475
M1 MacBook पर इसे
hidutil property --setऔरUserKeyMappingके साथHIDKeyboardModifierMappingSrc/HIDKeyboardModifierMappingDstvalues सेट करके लागू किया जाता हैकुछ महीने पहले मुझे इसकी ज़रूरत थी। मैं live performance में MacBook से keyboard rig चला रहा था, और monitoring के लिए low-latency wireless headphones इस्तेमाल करता था
headphone transmitter dongle लैपटॉप में लगा रहता था, और headphones पर बटन दबाते ही dongle “play/pause” command भेजता था, जिससे Music लॉन्च हो जाता था और default output device पर audio चलने लगती थी। यह इस बात की भी परवाह नहीं करता था कि headphone transmitter default output के रूप में चुना गया है या नहीं, इसलिए जटिल multi-device setup में आवाज़ किसी बिल्कुल अलग device से भी निकल सकती थी
अगर performance के दौरान गलती से बटन दब जाता और default interface P.A. system से जुड़ा होता, तो पूरे venue में random गाना full volume पर बज सकता था
अभी मैंने hardware setup बदल दिया है ताकि dongle लैपटॉप की जगह audio interface से जुड़ा रहे, इसलिए फिलहाल समस्या नहीं है, लेकिन इस तरह के misfire को रोकना भी reconfiguration की एक वजह था। creative professionals के लिए premium device में ऐसा configuration न किया जा सकने वाला behavior live performance environment के लिए बहुत अनुपयुक्त है
Apple को इस तरह की घटिया Microsoft-स्टाइल रणनीति अपनाते देखना निराशाजनक है। users को ज़बरदस्ती दूसरे product की तरफ़ धकेलना brand self-cannibalization है
यह पुराने Microsoft बनाम Netscape जैसी स्थिति लगती है
समझ नहीं आता कि ऐसे aggressive behavior को बंद करने का कोई आसान तरीका क्यों नहीं है। यह जानबूझकर जबरदस्ती और खीझ पैदा करने वाला बनाया गया लगता है, और अगर शुरुआत में न रोका जाए तो बाद में और फैलकर users को जकड़ सकता है
यह सिर्फ Apple की समस्या नहीं है; बहुत से product designers इस तरह के अहंकारी रवैये को अपना रहे हैं
मुझे यह नापसंद है कि audio file खोलने पर Music सिर्फ auto-launch ही नहीं होता, बल्कि उसे music library में भी जोड़ देता है
फिर मुझे उसे manually delete करना पड़ता है और “keep file” चुनना पड़ता है
इतना समय हो गया कि मैं भूल ही गया था कि default Music ऐप है। किसी file को play करना यह नहीं दर्शाता कि आप उसे library में जोड़ना चाहते हैं
.mp3जैसी file पर right-click करके Get Info खोलिए, default app को अपनी पसंद के app में बदलिए, फिर “Change all...” दबाइएहर file type के लिए एक बार करना पड़ता है, लेकिन एक बार कर दें तो काम हो जाता है
AirPods पर गलत क्लिक हो जाए और अचानक ऐसा ऐप खुल जाए जिसे मैं न इस्तेमाल करता हूँ न चाहता हूँ, यह वाकई बहुत खटकता है
मैं https://github.com/tombonez/noTunes इस्तेमाल करता हूँ
यह menu bar icon भी इस्तेमाल नहीं करता, इसलिए सीमित जगह बचाने का फ़ायदा भी है
मुझे यह approach बहुत पसंद आई। बहुत smart है। हालांकि व्यक्तिगत रूप से मुझे keyboard पर PLAY button दबाने पर Apple Music का खुलना पसंद है
पहले मैंने इसे रोकने के लिए खोजा था, लेकिन कोई अच्छा नतीजा नहीं मिला, इसलिए मैंने एक Shortcut बना लिया जो Music ऐप खुलते ही उसे फिर बंद कर देता था
व्यवहार में यह काफ़ी अच्छी तरह काम करता था, लेकिन जब सच में Music ऐप इस्तेमाल करना होता था, तब दिक्कत बन जाता था। Apple के user experience के हिसाब से यह काफ़ी खराब और खीझ पैदा करने वाला है