iOS के लिए बना यह सैंपल ऐप्लिकेशन, Google Home के एपीआई का इस्तेमाल करता है. पहली बार ऐप्लिकेशन बनाने और उसे चलाने के लिए, इस गाइड का इस्तेमाल करें.
ज़रूरी शर्तें
पक्का करें कि आपके पास iOS के लिए, Home के एपीआई इस्तेमाल करने की ज़रूरी शर्तें पूरी हों.
सैंपल ऐप्लिकेशन बनाने और इंस्टॉल करने के लिए, आपको Xcode के 15.3 या इसके बाद के वर्शन वाला कंप्यूटर चाहिए.
ऐप्लिकेशन की जांच करने के लिए, आपको इनकी ज़रूरत होगी:
- एक Google खाता.
- Apple Developer Program में रजिस्टर किया गया Apple ID, ताकि फ़िज़िकल डिवाइस के कॉन्फ़िगरेशन वाली फ़ाइलें जनरेट की जा सकें. अगर आपने पहले से रजिस्टर नहीं किया है, तो इसके लिए आपको अलग से शुल्क देना होगा. साथ ही, इसमें 48 घंटे तक लग सकते हैं.
- iOS 16.4 या इसके बाद के वर्शन पर काम करने वाला iOS डिवाइस (सिमुलेटर नहीं), जिसे टेस्ट खाते से सेट अप किया गया हो.
- एक वाई-फ़ाई नेटवर्क.
- Google का एक हब, जो Home के एपीआई के साथ काम करता हो.
- Thread बॉर्डर राऊटर, अगर आपके डिवाइस के लिए Thread की ज़रूरत है और आपके हब में यह सुविधा नहीं है.
- कम से कम एक ऐसा डिवाइस टाइप जो इस सुविधा के साथ काम करता हो.
डेवलपमेंट के लिए, आपको ऐसे Mac की ज़रूरत होगी जो इन ज़रूरी शर्तों को पूरा करता हो:
- macOS Sonoma या इसके बाद का वर्शन
- Xcode 15.3 या इसके बाद का वर्शन
Apple पर डिप्लॉयमेंट के लिए कॉन्फ़िगरेशन वाली फ़ाइलें बनाना
सबसे पहले, किसी ऐप्लिकेशन के लिए App Attest की सुविधा चालू करना ज़रूरी है. इसलिए, इसे सिमुलेटर डिवाइसों पर डिप्लॉय नहीं किया जा सकता. इसके लिए, आपको App Attest के एनटाइटलमेंट के साथ एक प्रोविज़निंग प्रोफ़ाइल बनानी होगी.
दूसरी बात, ऐप्लिकेशन और MatterExtension के बीच कम्यूनिकेशन के लिए, App Groups की सुविधा चालू करना ज़रूरी है. इसके लिए, आपको ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर रजिस्टर करना होगा.
किसी ऐप्लिकेशन को डिप्लॉय करने के लिए, कम से कम ये चरण पूरे करने होंगे:
MatterExtensionके साथ कम्यूनिकेट करने के लिए, अपने ऐप्लिकेशन के लिए एक ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर बनाएं.- Apple Developer Portal में साइन इन करें.
- एक ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर जोड़ें. उदाहरण के लिए, इसे
group.com.company.commissioningके तौर पर फ़ॉर्मैट किया जा सकता है.
- डेवलपर खाते में, अपना टेस्ट के लिए डिवाइस रजिस्टर करें.
अपने ऐप्लिकेशन के टारगेट के लिए एक प्रोफ़ाइल बनाएं.
- अपने ऐप्लिकेशन के लिए, ऐप्लिकेशन बंडल आइडेंटिफ़ायर तय करें. यह आइडेंटिफ़ायर यूनीक और जानकारी देने वाला होना चाहिए. उदाहरण के लिए, इसे
com.company.HomeApiSampleके तौर पर फ़ॉर्मैट किया जा सकता है. इस सेक्शन में, इसी आइडेंटिफ़ायर का इस्तेमाल किया जाएगा. - अपना ऐप्लिकेशन आईडी रजिस्टर करें. कहे जाने पर, App Attest और App Groups की सुविधा जोड़ें.
नए बनाए गए ऐप्लिकेशन आईडी में बदलाव करें और रजिस्टर किए गए ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर को जोड़ने के लिए, App Groups की सुविधा को कॉन्फ़िगर करें.
अपने ऐप्लिकेशन के डेवलपमेंट के लिए, डेवलपमेंट प्रोविज़निंग प्रोफ़ाइल बनाएं. इसे अपने नए बनाए गए ऐप्लिकेशन आईडी और चुने गए टेस्ट डिवाइसों से जोड़ें. पक्का करें कि आपके पास ऐप्लिकेशन पर हस्ताक्षर करने के लिए, डेवलपर का सर्टिफ़िकेट हो.
- अगर आपने अब तक कोई सर्टिफ़िकेट नहीं बनाया है, तो निर्देश पाने के लिए, डेवलपर आईडी सर्टिफ़िकेट बनाना लेख पढ़ें.
- अपने ऐप्लिकेशन के लिए, ऐप्लिकेशन बंडल आइडेंटिफ़ायर तय करें. यह आइडेंटिफ़ायर यूनीक और जानकारी देने वाला होना चाहिए. उदाहरण के लिए, इसे
अपने
MatterExtensionटारगेट के लिए एक प्रोफ़ाइल बनाएं.- अपने
MatterExtensionके लिए, ऐप्लिकेशन बंडल आइडेंटिफ़ायर तय करें. यह आइडेंटिफ़ायर, ऐप्लिकेशन आइडेंटिफ़ायर से इनहेरिट किया जाना चाहिए. उदाहरण के लिए, इसेcom.company.HomeApiSample.MatterExtensionके तौर पर फ़ॉर्मैट किया जा सकता है. - अपना ऐप्लिकेशन आईडी रजिस्टर करें. कहे जाने पर, App Group की सुविधा जोड़ें.
- नए बनाए गए ऐप्लिकेशन आईडी में बदलाव करें और पिछले चरणों में बनाए गए रजिस्टर किए गए ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर को जोड़ने के लिए, App Groups की सुविधा को कॉन्फ़िगर करें.
- डेवलपमेंट प्रोविज़निंग प्रोफ़ाइल बनाएं
MatterExtensionके लिए.
- अपने
OAuth क्लाइंट आईडी जनरेट करना और Home के एपीआई चालू करना
Google के ऑथेंटिकेशन बैकएंड पर अपनी पहचान बताने के लिए, आपके ऐप्लिकेशन को OAuth क्लाइंट आईडी की ज़रूरत होती है. iOS और ऐप्लिकेशन के लिए, OAuth क्लाइंट आईडी ऐप्लिकेशन टाइप को iOS के तौर पर कॉन्फ़िगर करना ज़रूरी है. ऐप्लिकेशन, Home के एपीआई को भी कॉल करेगा. इस सुविधा को चालू करने के लिए, Google Cloud प्रोजेक्ट में एपीआई को चालू करना ज़रूरी है.
OAuth क्लाइंट आईडी जनरेट करना
- Google Cloud Console में, प्रोजेक्ट चुनने वाले डैशबोर्ड पर जाएं और वह प्रोजेक्ट चुनें जिसका इस्तेमाल करके आपको OAuth क्रेडेंशियल बनाने हैं.
- सबसे ऊपर बाईं ओर मौजूद, मेन्यू बटन > सभी प्रॉडक्ट देखें > एपीआई और सेवाएं पर क्लिक करके, एपीआई और सेवाएं वाले पेज पर जाएं.
- नेविगेशन मेन्यू में, क्रेडेंशियल पर क्लिक करें.
अगर आपने अब तक इस Google Cloud प्रोजेक्ट के लिए, सहमति स्क्रीन को कॉन्फ़िगर नहीं किया है, तो सहमति स्क्रीन कॉन्फ़िगर करें बटन दिखेगा. ऐसे में, सहमति स्क्रीन को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं. अगर OAuth सहमति स्क्रीन पहले से कॉन्फ़िगर की गई है और उसकी पब्लिशिंग स्थिति टेस्टिंग है, तो पक्का करें कि जिन टेस्ट खातों का इस्तेमाल किया जाएगा उन्हें टेस्ट उपयोगकर्ता ग्रुप में जोड़ा गया हो. अगर ऐसा नहीं है, तो अगले चरण पर जाएं.
- इस्तेमाल के उदाहरण के हिसाब से, इंटरनल या एक्सटर्नल चुनें. इसके बाद, बनाएं पर क्लिक करें. ऐसी स्क्रीन जहां OAuth के लिए सहमति दी जाती है पैनल दिखेगा.
- स्क्रीन पर दिए गए निर्देशों के मुताबिक, ऐप्लिकेशन की जानकारी वाला पेज पर जानकारी डालें. इसके बाद, सेव करें और जारी रखें पर क्लिक करें. स्कोप पैनल दिखेगा.
- आपको कोई स्कोप जोड़ने की ज़रूरत नहीं है. इसलिए, सेव करें और जारी रखें पर क्लिक करें. टेस्ट उपयोगकर्ता पैनल दिखेगा.
- अगर आपने इंटरनल सहमति स्क्रीन बनाने का विकल्प चुना है, तो आपको अपने ऐप्लिकेशन को ऐक्सेस करने की सुविधा की जांच करने के लिए, उपयोगकर्ताओं को जोड़ना होगा. उपयोगकर्ता जोड़ें पर क्लिक करें. उपयोगकर्ता जोड़ें पैनल दिखेगा. टेस्ट उपयोगकर्ताओं के पास, आपके ऐप्लिकेशन में अनुमतियां देने का अधिकार होता है. खाली फ़ील्ड में, एक या उससे ज़्यादा Google खाते के ईमेल पते जोड़ें. इसके बाद, जोड़ें पर क्लिक करें.
- सेव करें और जारी रखें पर क्लिक करें. खास जानकारी पैनल दिखेगा.
- OAuth की सहमति स्क्रीन की जानकारी देखें. इसके बाद, डैशबोर्ड पर वापस जाएं पर क्लिक करें.
OAuth क्लाइंट आईडी बनाने के लिए, बाएं मेन्यू पैनल में क्रेडेंशियल पर क्लिक करें.

- क्रेडेंशियल बनाएं बटन पर क्लिक करें और OAuth क्लाइंट आईडी चुनें.
- **ऐप्लिकेशन टाइप** में, **iOS** चुनें.
- बंडल आईडी में, अपने ऐप्लिकेशन आइडेंटिफ़ायर और Apple Developer Team ID डालें. दूसरे फ़ील्ड ज़रूरी नहीं हैं. इन्हें खाली छोड़ा जा सकता है.
- बनाएं पर क्लिक करें और बनाए गए क्लाइंट आईडी को नोट करें या PLIST डाउनलोड करें पर क्लिक करें. इसका इस्तेमाल, अनुमतियों के फ़्लो की सुविधा को चालू करने के लिए किया जाएगा. ज़्यादा जानकारी के लिए, अनुमति के क्रेडेंशियल बनाना सेक्शन देखें.
- क्रेडेंशियल बनाएं बटन पर क्लिक करें और OAuth क्लाइंट आईडी चुनें.
Home के एपीआई चालू करना
Home के एपीआई को ऐक्सेस करने की अनुमति दें.
- एपीआई और सेवाएं टैब में, चालू एपीआई और सेवाएं पर क्लिक करें.
- पेज पर सबसे ऊपर मौजूद, एपीआई और सेवाएं चालू करें पर क्लिक करें.
HOME APIखोजें और उसे चुनें.- Home API के जानकारी वाले पेज पर, चालू करें पर क्लिक करें.
सोर्स कोड डाउनलोड करना
सैंपल ऐप्लिकेशन का सोर्स कोड GitHub पर उपलब्ध है.
उस जगह पर जाएं जहां आपको प्रोजेक्ट सेव करना है. इसके बाद, उसे क्लोन करें:
git clone https://github.com/google-home/google-home-api-sample-app-ios.gitXcode पर प्रोजेक्ट लोड करने के लिए, फ़ाइल > खोलें पर क्लिक करें. इसके बाद, क्लोन की गई रिपॉज़िटरी की रूट में मौजूद,
GoogleHomeAPISampleIOS.xcodeproj को चुनें.
प्रोजेक्ट में SDK टूल जोड़ना
सैंपल ऐप्लिकेशन प्रोजेक्ट को बनाने के लिए, कुछ और जानकारी की ज़रूरत होती है. इसमें, SDK फ़्रेमवर्क फ़ाइलों को स्थानीय तौर पर जोड़ना, डेवलपर खाते के आइडेंटिफ़ायर की जानकारी डालना, और OAuth क्लाइंट आईडी डालना शामिल है.
ऐप्लिकेशन बनाना
Home के एपीआई का iOS SDK डाउनलोड करने के लिए, आपको पहले Google Home के डेवलपर के तौर पर साइन इन करना होगा.
सैंपल ऐप्लिकेशन के लिए, अपना Xcode प्रोजेक्ट कॉन्फ़िगर करें:
- डाउनलोड किए गए SDK को, प्रोजेक्ट की रूट डायरेक्ट्री के मुकाबले
ThirdParty/GoogleHomeSDKडायरेक्ट्री में अनपैक करें. - डेवलपर और OAuth क्लाइंट आईडी कॉन्फ़िगर करना:
- नेविगेशन पैन में, GoogleHomeAPISampleIOS फ़ोल्डर ढूंढें और बदलाव करने के लिए, Info.plist फ़ाइल खोलें.
Info.plist फ़ाइल में, GIDClientID में अपना OAuth क्लाइंट आईडी (OAuth के लिए सहमति सेट अप करना सेक्शन देखें), Cloud Project Number में अपने क्लाउड प्रोजेक्ट से जुड़ा नंबर, और GIDTeamID में OAuth रजिस्ट्रेशन की प्रोसेस के दौरान इस्तेमाल किए गए डेवलबर खाते का Apple Developer Team ID डालें.
App Attest की सुविधा जोड़ना:
- प्रोजेक्ट के कॉन्फ़िगरेशन में बदलाव करने के लिए, Xcode के नेविगेशन पैन में
GoogleHomeAPISampleIOSप्रोजेक्ट फ़ाइल चुनें. - सबसे ऊपर मौजूद, साइन इन करना और सुविधाएं टैब पर क्लिक करें. इसके बाद, TARGETS सेक्शन में बाईं ओर मौजूद,
GoogleHomeAPISampleIOSटारगेट चुनें. - साइन इन करना और सुविधाएं टैब के ठीक नीचे, + सुविधा पर क्लिक करें और App Attestखोजें.
- जोड़ने के लिए, App Attest पर क्लिक करें. अगर खोज में यह सुविधा नहीं दिखती है, तो हो सकता है कि प्रोजेक्ट में इसे पहले ही जोड़ा गया हो.
- प्रोजेक्ट के कॉन्फ़िगरेशन में बदलाव करने के लिए, Xcode के नेविगेशन पैन में
App Groups की सुविधा जोड़ें.

- GoogleHomeAPISampleIOS प्रोजेक्ट > GoogleHomeAPISampleIOS टारगेट पर जाएं.
- साइन इन करना और सुविधाएं > + सुविधा पर क्लिक करें.
- App Groups की सुविधा चुनें.
- App Groups में मौजूद, + आइकॉन पर क्लिक करें. इसके बाद, अपने ऐप्लिकेशन के लिए, Apple Developer Portal में जोड़ा गया App Groups आइडेंटिफ़ायर जोड़ें.
- MatterAddDeviceExtension टारगेट के लिए भी ये चरण दोहराएं, ताकि इसे App Groups में जोड़ा जा सके.
बंडल आइडेंटिफ़ायर अपडेट करना
- अपने डेवलपर सर्टिफ़िकेट और प्रोविज़निंग प्रोफ़ाइल का इस्तेमाल करके, हार्डवेयर पर सैंपल ऐप्लिकेशन को सही तरीके से चलाने और डिप्लॉय करने के लिए, आपको एक यूनीक बंडल आइडेंटिफ़ायर देना होगा. यह वही आइडेंटिफ़ायर होना चाहिए जो आपके OAuth क्लाइंट क्रेडेंशियल से जुड़ा है (ऊपर देखें).
- प्रोजेक्ट के कॉन्फ़िगरेशन में बदलाव करने के लिए, Xcode के नेविगेशन पैन में
GoogleHomeAPISampleIOSप्रोजेक्ट फ़ाइल चुनें. - सबसे ऊपर मौजूद, साइन इन करना और सुविधाएं टैब पर क्लिक करें. इसके बाद, TARGETS सेक्शन में बाईं ओर मौजूद,
GoogleHomeAPISampleIOSटारगेट चुनें. - साइन इन करना सेक्शन में, बंडल आइडेंटिफ़ायर फ़ील्ड चुनें और ऐप्लिकेशन के लिए यूनीक आइडेंटिफ़ायर डालें.
- ज़रूरी एनटाइटलमेंट के साथ, उस बंडल से जुड़ी प्रोविज़निंग प्रोफ़ाइल चुनें या इंस्टॉल करें.
MatterAddDeviceExtensionटारगेट के लिए भी ये चरण दोहराएं, ताकि एक्सटेंशन के लिए बंडल आइडेंटिफ़ायर डाला जा सके और उसकी रजिस्टर की गई प्रोविज़निंग प्रोफ़ाइल इंपोर्ट की जा सके.
कोड में, रजिस्टर किए गए ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर को अपडेट करना.
- डिवाइस कमीशनिंग जैसी सुविधाओं के लिए, ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर का इस्तेमाल करने के लिए, ऐप्लिकेशन को SDK इंस्टेंस कॉन्फ़िगर करना ज़रूरी है. Apple Developer Portal में रजिस्टर किए गए ऐप्लिकेशन ग्रुप आईडी का इस्तेमाल करने के लिए, ऐप्लिकेशन को अपडेट करें. इसके लिए,
HOME_API_TODO_ADD_APP_GROUPस्ट्रिंग खोजें और हर इंस्टेंस को इससे बदलें.
ये कॉन्फ़िगरेशन, इन फ़ाइलों में किए जाते हैं:
- SDK टूल के शुरू होने पर,
GoogleHomeAPISampleIOS.swift. RequestHandler.swiftCommissioningManager.swift
- डिवाइस कमीशनिंग जैसी सुविधाओं के लिए, ऐप्लिकेशन ग्रुप आइडेंटिफ़ायर का इस्तेमाल करने के लिए, ऐप्लिकेशन को SDK इंस्टेंस कॉन्फ़िगर करना ज़रूरी है. Apple Developer Portal में रजिस्टर किए गए ऐप्लिकेशन ग्रुप आईडी का इस्तेमाल करने के लिए, ऐप्लिकेशन को अपडेट करें. इसके लिए,