प्रोफ़ाइल एप्लिकेशन-पहचानकर्ता एंटाइटेलमेंट के लिए एंटाइटेलमेंट फ़ाइल के मूल्य से मेल नहीं खाती है


92

मैं ऐप स्टोर पर एक ऐप अपलोड करने की कोशिश कर रहा हूं और मुझे उस पृष्ठ पर यह त्रुटि मिल रही है जिसमें सीट्स हैं। जहां तक ​​मैं बता सकता हूं कि मैंने मैदान बदल दिया है तो वे मेल खा गए हैं, लेकिन मुझे कुछ याद आ रहा है।

यह वह है जो पॉप अप करता है

किसी भी तरह की सहायता का स्वागत किया जाएगा।

Info.plist


1
अपनी entitlements.plistफाइल दिखाओ ।
इमाद अली

शायद यह इसलिए है क्योंकि मैंने इसके लिए पहले कभी नहीं देखा था, लेकिन एकमात्र ऐसा प्लिस्ट है जो मुझे जानकारी कहता है, लेकिन यहाँ यह है कि यह दूसरी छवि है।
पॉल रेमंड

यह कहता है कि मैं अब और लिंक पोस्ट नहीं कर सकता, मैं एक विमान पर चढ़ने जा रहा हूँ, अगर कोई भी किसी भी चीज के साथ आता है
पॉल रेमंड

जवाबों:


208

मुझे यकीन नहीं है कि यह क्यों तय किया गया था, लेकिन मैं अपने लक्ष्य की क्षमताओं टैब में चला गया, iCloud चालू किया, एक आर्काइव बनाने की कोशिश की, यह विफल रहा, मैंने फिर से iCloud बंद कर दिया, एक आर्काइव निर्माण करने की कोशिश की और यह सफल रहा, और उसके बाद यह फिर से प्रमाणपत्रों को स्वचालित रूप से हल करने में सक्षम था।


3
पता नहीं क्यों यह काम किया है, लेकिन यह किया, सेब का समर्थन कम था तो मददगार।
पॉल रेमंड

13
इसके लिए धन्यवाद - चालू / बंद होने के बाद इसने xcodeproj के बगल में एक खाली .entitlements plist बनाया है। ऐसा लगता है कि प्रस्तुत करने की प्रक्रिया क्या है। मौजूदा ऐप्स के लिए Xcode 9 में संभवतः केवल एक समस्या है जिसके लिए किसी एंटाइटेलमेंट / क्षमताओं की आवश्यकता नहीं है।
एंड्रयू वुड

3
मुझे भी। प्राचीन परियोजना। एक क्षमता को शुरू करने के सुझाव के लिए बहुत धन्यवाद, अब एक खाली .entitlements है जिसे स्वीकार किया जाता है। Apple के साथ एक बग फाइल करना।
रिकजेनसेन

6
इस बी एस पर पूरी शाम घूमती रही। मुझे टॉगल ऑन और ऑफ करना पड़ा, जिसने रिक्त एंटाइटेलमेंट फ़ाइल बनाई, और फिर मुझे अपनी 'कोड साइनिंग एंटाइटेलमेंट्स' को उस रिक्त फ़ाइल पर सेटिंग को इंगित करना पड़ा।
एडम वाइट

2
Xcode 10.0beta5 में यह अभी भी हो रहा है। मेरे लिए, यह परियोजना का नाम बदलने के कारण था, जब पात्रताएं बनाई गई थीं। इसके बाद iCloud को टॉगल करने के लिए एंटाइटेलमेंट फ़ाइल का नाम बदला और अपडेट किया गया कि यह बिल्ड सेटिंग्स में नाम है। फ़ाइल की सामग्री समान थी। ऐसा लगता है कि अपलोडर बिल्ड सेटिंग्स फ़ाइल नाम की परवाह किए बिना एंटाइटेलमेंट फ़ाइल के नाम की परवाह करता है।
ट्रॉय

40

खोजक पर राइट क्लिक करें -> फ़ोल्डर पर जाएं ...

~/Library/MobileDevice/Provisioning

Xcode 11 के लिए

~/Library/MobileDevice/Provisioning Profiles/

सभी प्रोविज़निंग प्रोफाइल को हटा दें


1
मेरे मामले में फोल्डर "~ / लाइब्रेरी /
मोबाइलडेविस

सहमत हूँ, यह सही उत्तर है, बस Xcode 11 पथ के साथ है~/Library/MobileDevice/Provisioning Profiles/
Marius Kažemitiskaitis

यह समस्या को ठीक क्यों करता है? हमने अभी क्या हटाया है? क्या इसका कोई साइड इफेक्ट है?
मार्कडॉन

आप प्रोविजनिंग प्रोफाइल हटा रहे हैं या तो Xcode या मैन्युअल रूप से अपने आप जोड़ दी गई है। यदि आप अन्य प्रोफाइल नहीं खोना चाहते हैं, तो आप कुछ का उपयोग कर सकते हैं ... grep -ir your_APP_ID ~ / Library / MobileDevice / Provisioning \ Profiles; यह दिखाने के लिए कि कौन सा प्रोफ़ाइल मेल खाता है। बस उन्हें हटा दें और यह उसी कार्य को पूरा करेगा।
क्रिस डगलस

33

आपके द्वारा बनाए गए एप्लिकेशन का एक गलत application-identifierमूल्य है, जो प्रोविजनिंग प्रोफ़ाइल की अपेक्षा कर रहा है। 2ABCDEFG टीम के लिए appID com.example.foo के लिए प्रमाण पत्र आवेदन-पहचानकर्ता से अपेक्षा करेगा: 2ABCDEFG.com.example.foo, आपके ऐप ने घोषित किया कि उसका appID com.example.foo था, लेकिन एप्लिकेशन-पहचानकर्ता मेल नहीं खाता था , या तो आप गलत टीम-उपसर्ग का उपयोग कर रहे हैं, या आपके पास बंडललीड गलत है।

मेरे मामले में, मैं बिल्ड योजनाओं का उपयोग कर रहा हूं ताकि मुझे एक प्रोडक्ट ऐप और एक क्यूए ऐप बनाने की अनुमति मिल सके। उत्पादों के लिए com.example.foo, और QA के लिए com.example.foo.qa। मैंने अपना बंडलीइन्फ़ीडिफ़र को Info.plist में $ (PRODUCT_BUNDLE_IDENTIFIER) $ (BUNDLE_SUFFIX) में सेट किया था, जो सिम्युलेटर में और डिवाइस पर अलग-अलग ऐप रखने के लिए बढ़िया काम करता है, हालाँकि, जब ऐप आर्काइव चरण के दौरान अपना एप्लिकेशन-आइडेंटीफ़ायर बनाता है, तो यह Info.plist द्वारा निर्मित बंडलडाइंटिफायर को नहीं पढ़ना चाहिए।

स्थिति को मापने के लिए, मैंने अपने क्यूए बिल्डसेटिंग PRODUCT_BUNDLE_IDENTIFIER को com.example.foo.qa में बदलने के लिए FooProject.xcodeproj / project.pbxproj (एक पाठ संपादक के साथ) संपादित किया।

आप इसे हल करने के लिए गहराई से गोता लगाने के लिए एप्पल के तकनीकी प्रश्नोत्तर को देख सकते हैं। एक बार जब आप अपने निर्यात किए गए ऐप पर कोडसाइन एंटाइटेलमेंट चलाते हैं, और देखें कि आपका ऐप किस ऐप-पहचानकर्ता के साथ बनाया गया था, तो यह महसूस करना बहुत जल्दी होना चाहिए कि आपके गलत क्या कर रहे हैं। https://developer.apple.com/library/content/qa/qa1879/_index.html मुझे अपनी Google खोज में वह पृष्ठ नहीं मिला, क्योंकि वे वास्तव में त्रुटि संदेश से वाक्यांश का उपयोग नहीं करते हैं या एप्लिकेशन को कॉल नहीं करते हैं -इसका पूरा नाम द्वारा पहचानकर्ता, लेकिन इसके बजाय ऐप आईडी कहें।

इसके अलावा, इस समस्या का समाधान एक नया प्रोविज़निंग प्रोफाइल उत्पन्न करने के लिए नहीं है, जिसमें एप्लिकेशन-आइडेंटिफायर एंटाइटेलमेंट है, इसमें वह एंटाइटेलमेंट है, हालांकि, प्रोविज़निंग प्रोफाइल में वैल्यू और आपके ऐप का मिलान करना है।


2
धन्यवाद! मैं उत्पाद बंडल पहचानकर्ता में प्रत्यय के लिए अपने कस्टम संस्करण का उपयोग करने के लिए, पैकेजिंग के तहत, अपनी बिल्ड सेटिंग्स को बदलकर ठीक करने में सक्षम था। उदा। com .mycompany.myapp $ (BUNDLE_ID_SUFFIX) और इसने इसे हल किया। इसलिए मुझे प्रोजेक्ट फ़ाइल को मैन्युअल रूप से संपादित करने की आवश्यकता नहीं थी और प्रति वातावरण में विभिन्न बंडल आईडी को आसानी से बनाए रखने में सक्षम था।
n8tr

आपके पास एप्लिकेशन-आइडेंटिफ़ायर मिसमैच होने का एक कारण यह है कि आपके पास सभी प्रोविज़निंग प्रोफाइल डाउनलोड नहीं हैं। आपका संग्रह वाइल्डकार्ड प्रोफ़ाइल के साथ बनाया गया है यदि सटीक ऐप आईडी के साथ प्रोफ़ाइल गायब है, जो निर्यात चरण में बेमेल हो जाता है।
दीदु

इसने मेरे लिए काम किया। मैं एक ईओण ऐप बना रहा था और मुझे एहसास हुआ कि मैंने एक अलग खाते पर परीक्षण किया है। मैंने com.foo.testName का उपयोग किया और सही खाते के साथ निर्माण करते समय इसे वापस बदल दिया। ऐसा लगता है। Com .foo.testName अभी भी pbxproj फ़ाइल में था
एल्स

बहुत बहुत धन्यवाद, यह वही था जो मेरी मान्यता को अवरुद्ध कर रहा था, और स्पष्टीकरण बहुत स्पष्ट है!
एमडीएच

@ n8tr सिरदर्द और हताशा के लगभग एक सप्ताह के बाद, आपकी टिप्पणी ने मुझे बचा लिया। धन्यवाद।
बेहदाद

9

हो सकता है कि {प्रोजेक्ट} .entitlements फ़ाइल गायब थी। @Samkass ने जो उल्लेख किया है उसे करने से फ़ाइल स्वतः उत्पन्न हो जाएगी और यह काम करेगा। तो मूल रूप से बस क्षमताओं टैब पर जाएं, कुछ भी सक्षम करें, और इसे अक्षम करें।


यह मूर्खतापूर्ण है लेकिन यह मेरे लिए कई पुरानी परियोजनाओं के लिए काम कर रहा था जिन्हें मैं अपडेट कर रहा था।
aspro

7

ICloud टॉगल को बदलना, निर्माण करना, और iCloud को अक्षम करना, यह कहते हुए त्रुटि से छुटकारा दिलाया:

प्रोफ़ाइल एप्लिकेशन-पहचानकर्ता और किचेन-एक्सेस-ग्रुप एंटाइटेलमेंट के लिए एंटाइटेलमेंट फ़ाइल के मूल्यों से मेल नहीं खाती।


3

Xcode 11 में, यह तब हो सकता है जब आपकी परियोजना के लिए एक .entitlement फ़ाइल मौजूद नहीं है। समाधान यह होगा कि 'हस्ताक्षर और क्षमताओं' के तहत '+ क्षमता' पर क्लिक करके किसी भी यादृच्छिक क्षमता को जोड़ा जाए (जिससे अप्रेंटिस फ़ाइल का निर्माण होता है) और फिर क्षमता को हटा दिया जाता है। यह आपको स्वचालित रूप से एक प्रमाण पत्र भी प्रदान करने देगा।


2

कृपया अपने एप्लिकेशन सुविधाओं की जांच करें, जो आपके एप्लिकेशन के लिए आवश्यक हैं जैसे ऐप खरीदारी, पुश सूचना, इंटर ऐप ऑडियो, सिरी किट आदि।

इस प्रकार की त्रुटि का एकमात्र कारण है।

सुनिश्चित करें कि आपके ऐप आईडी में उपरोक्त झंडे हों।

अधिकांश समय ऐसा होता है जब आप पुश नोटिफिकेशन को कॉन्फ़िगर नहीं करते हैं, इन ऐप खरीदारी में आप ऐप आईडी।


मैंने कुछ भी सक्षम नहीं किया है। यह वास्तव में निराशाजनक है।
पॉल रेमंड

क्या आपके ऐप में कोई सुविधा है जिसका मैं ऊपर उल्लेख करता हूं
टेक

मैं बाद में एक स्क्रीनशॉट संलग्न करूंगा, लेकिन कोई पुश नोटिफिकेशन या ऐप के लिए ऐप खरीद में नहीं है।
पॉल रेमंड

क्या वास्तव में आप स्क्रीन शॉट चाहते हैं? प्लिस्ट के तहत यह एंटाइटेलमेंट का उल्लेख नहीं करता है।
पॉल रेमंड

2

मैं अपने लक्ष्य की क्षमता टैब में गया, किचेन शेयरिंग चालू किया और यह काम करना शुरू कर देता है


2

मेरे लिए, चाल थी

  1. लक्ष्य के लिए एक क्षमता जोड़ें / निकालें (मेरे मामले में एक विजेट);
  2. सुनिश्चित करें कि निर्मित एंटाइटेलमेंट फ़ाइल बिल्ड सेटिंग्स में सूचीबद्ध है;
  3. और एंटाइटेलमेट फाइल में "विकास" के साथ "APS Environemnt" कुंजी जोड़ने के लिए।

1

Xcode 10 में, मुझे प्रोजेक्ट नेविगेटर में फ़ोल्डर को सही करने के लिए एंटाइटेलमेंट फ़ाइल को ले जाकर काम करना पड़ा। मेरे पास एंटाइटेलमेंट फ़ाइल नहीं है, लेकिन मैं क्षमताओं टैब पर टॉगल करने की सुविधाओं के द्वारा एक प्राप्त करने में कामयाब रहा।

यहाँ छवि विवरण दर्ज करें


1

मुझे यह त्रुटि मिली और उपरोक्त किसी भी समाधान ने मेरे मामले में समस्या को हल नहीं किया।

मेरे लिए जो काम किया गया था, वह "एनआईटी" से "वाईईएस" के लिए "एंटिटेलस.प्लिस्ट" फाइल में "डिबेट किया जा सकता है" सेटिंग को बदलना था।


1

मेरे मामले में यह समस्या निम्नलिखित थी: बिल्ड स्टेप के लिए प्रोविज़निंग प्रोफाइल का इस्तेमाल एक्सपोर्ट स्टेप के लिए इस्तेमाल किए जाने वाले प्रोविज़निंग प्रोफाइल की तुलना में अलग ऐप आईडी के लिए किया गया था।

तो सुनिश्चित करें कि आप निर्माण और निर्यात कदम के लिए एक ही प्रावधान प्रोफ़ाइल का उपयोग कर रहे हैं।


क्योंकि मैं यह उजागर करना चाहता था कि निर्माण और निर्यात कदम पर विभिन्न प्रावधान प्रोफाइल के कारण यह त्रुटि हो सकती है। इस स्थिति में मूल कारण खोजने के लिए त्रुटि संदेश मददगार नहीं है। उत्तर देर से क्यों मिलता है - यह त्रुटि कुछ समय की अवधि के लिए बाध्य नहीं है। तो यह 1 साल पहले हुआ था और अब सभी समान है। स्वीकृत उत्तर मेरे मामले में काम नहीं आया।
एलेक्सी कोमोव

1

मेरे लिए जो काम किया वह यह था कि मैंने XCode 11 में आर्काइव बनाया था, और इसमें अपलोड किया था Xcode 12 बीटा।


0

अपने डेवलपर खाते में अपने ऐप आईडी के लिए सक्षम विकल्पों के साथ ऐप में क्रॉस चेक क्षमताएं।


यह एक मुफ्त ऐप है और मैंने कुछ भी सक्षम नहीं किया है, और यह सिर्फ इतना निराशाजनक है। यह मेरे डिवाइस पर बस ठीक स्थापित करता है, मुझे नहीं पता कि कहाँ देखना है।
पॉल रेमंड

क्या आप दोनों के स्क्रीनशॉट साझा कर सकते हैं?
काव्यकाव्य

आप का स्क्रीनशॉट क्या चाहते हैं?
पॉल रेमंड

एक डेवलपर खाते पर क्षमताओं अनुभाग और ऐप आईडी कॉन्फ़िगरेशन का स्क्रीनशॉट
काव्याविता

0

मैंने यहाँ उत्तर में सूचीबद्ध कुछ विकल्पों की कोशिश की, लेकिन किसी ने भी मदद नहीं की, हालांकि चेकबॉक्स को "स्वचालित रूप से हस्ताक्षर करने का प्रबंधन" बंद कर दिया और समस्या को ठीक कर दिया।


0

टीएल; डीआर: अपनी ऐप आईडी की जांच करें और सुनिश्चित करें कि आपके मिलान के लक्ष्य में सेवाएं मेल खा रही हैं।


मेरे साथ जो हुआ वह यह था कि मैंने Xcode 10.1 मुझे एक App ID बनाने में मदद की, और उसके बाद, मैं यहाँ वर्णित समस्या में चला गया। (जब मैंने आईट्यून्सकनेक्ट में ऐप बनाया, तब मैंने व्हिलकार्डकार्ड ऐप आईडी का चयन किया, इसलिए मुझे यह एहसास भी नहीं हुआ था।) जब मैंने आईओएस डेवलपर पोर्टल खोला, तो नए ऐप आईडी में गेम सेंटर और इन ऐप खरीदारी स्वचालित रूप से सक्षम हो गई।

चूंकि मैं गेम सेंटर को आपके में सक्षम नहीं कर सका Target -> Capabilities, इसलिए मैंने ऐप खरीदारी में सक्षम किया, और फिर मेरे ऐप पर हस्ताक्षर किए जा सकते हैं और अपलोड किए जा सकते हैं।


0

जब हमने एक ही मुद्दे का सामना किया, तो हमने उपरोक्त सभी चीजों की कोशिश की लेकिन इसमें से किसी ने भी काम नहीं किया।

हमारे लिए जो काम किया है वह बंडल पहचानकर्ता को बदल रहा है ताकि यह पिछले एक के समान न हो, उदाहरण के लिए "com.name.App" को "com.name.App2"; xcode को प्रोविज़निंग प्रोफाइल लाने / बनाने का प्रयास करने दें और फिर इसे मूल में वापस लाने का मौका दें।

इस विचार को Apple के डेवलपर मंचों- https://forums.developer.apple.com/thread/114539 पर देखें


0

मैं इस पृष्ठ पर हाल ही में एक डुप्लिकेट लक्ष्य बनाने की कोशिश करने के बाद आया था - कोई भी सुझाव मेरे लिए काम नहीं कर रहा था। आगे की जांच, और बालों को खींचने की कुछ मात्रा, आखिरकार मेरे ऐप के लिए बिल्ड सेटिंग्स के माध्यम से दस्त करने की कोशिश की और यह पता लगाने की कोशिश की कि क्या गलत था।

यह पता चला कि मेरी परियोजना अभी भी मूल लक्ष्य की एंटाइटेलमेंट फ़ाइल की ओर इशारा कर रही थी, बजाय इसके कि उसका कोई अपना है। इसे हल करने के लिए, मैंने खोजक (जैसे $ {SRCROOT} /MyProject/Entitlements/TargetName.entitlements) में मूल एंटाइटेलमेंट फ़ाइल में नेविगेट किया। ) , उसी फ़ोल्डर में एक प्रतिलिपि बनाई और फिर उसका नाम बदल दिया (जैसे NewTargetName.entitlements)।

फिर, मैंने अपने नए लक्ष्य बंडल पहचानकर्ता (जैसे ABCDEFGH.US.co.fake-company.superduperapp-newtargetname ) को समाप्त करने के लिए अपनी नई एंटाइटेलमेंट फ़ाइल खोली और एप्लिकेशन-पहचानकर्ता फ़ील्ड को बदल दिया ।

अंत में, मैंने अपनी सेटिंग्स फ़ाइल के पथ के लिए बिल्ड सेटिंग्स में 'कोड साइनिंग एंटाइटेलमेंट' फ़ील्ड को अपडेट किया (मेरे लिए, यह $ {SRCROOT} /MyProject/Entitlements/TitgetName.entitlements की पंक्तियों के साथ कुछ था। )।

मैं हस्ताक्षर और क्षमताओं टैब पर लौटा, और लो, मुद्दा तय हो गया था। आशा है कि किसी को यह उपयोगी लगता है।


0

Xcode की जानकारी टैब पर जाएं और बंडल पहचानकर्ता फ़ील्ड बदलें - ऐप का नाम बदलने के बाद भी यह नहीं बदला, जबकि मैंने सामान्य टैब पर बंडल पहचानकर्ता को बदल दिया था। उपरोक्त सुधारों ने मेरे लिए काम नहीं किया, लेकिन इसने तुरंत काम किया।


0

मेरे पास यह मुद्दा था एक नए ब्रांड के साथ, Xcode 12 बीटा 3 में ( ऐप सबमिशन आज से शुरू हुआ ) में ।

Xcode पर "स्वचालित रूप से हस्ताक्षर करने का प्रबंधन" था। हालांकि, "हस्ताक्षर प्रमाणपत्र" में प्रदर्शित टीम आईडी आईट्यून्स कनेक्ट वेबसाइट में प्रदर्शित टीम आईडी से मेल नहीं खाती। ऐप को अपलोड होने से रोकने का मूल कारण यही था।

मैंने इसे कैसे तय किया:

  1. मैंने मैन्युअल रूप से ऐप स्टोर वितरण के लिए एक प्रावधान प्रोफ़ाइल बनाया
  2. Xcode में, मैंने प्राथमिकताएं -> खाता में "डाउनलोड मैनुअल प्रोफाइल" पर टैप किया
  3. फिर, मैंने "स्वचालित रूप से हस्ताक्षर करने का प्रबंधन" बंद कर दिया।
  4. एक बार जब मैंने ड्रॉपडाउन में प्रोविजनिंग प्रोफाइल का चयन किया, तो सही टीम आईडी "साइनिंग सर्टिफिकेट" के तहत दिखाई दी

0

मैं Gitlab पाइपलाइन स्थापित करते समय एक ही मुद्दे में भाग गया, जो ExportArchive cmd चलाता है और AppStore पर अपलोड करता है। मैं साइन इन और सेर्ट्स में चुनी गई एक ही टीम को बिल्ड सेटिंग्स में DEVELOPMENT_TEAM को बदलकर काम करने में सक्षम था।

क्योंकि पहले यह रिक्त था जो डिफ़ॉल्ट रूप से एक और DEV TEAM आईडी का उपयोग कर रहा था जो गलत था और मेल नहीं खाता था और यह "एप्लिकेशन-आइडेंटिफायर" = 12331232.com.bannana.apples.peach के बारे में शिकायत कर रहा था। जो मुझे सही DEV TEAM सेट करने की ओर ले जाता है और इसने काम किया।

Xcode ver: संस्करण 11.3.1

मुझे उम्मीद है कि इससे किसी को मदद मिलेगी।


0

हमारा सेटअप

एकाधिक लक्ष्य:

  • उप क्षुधा
  • घड़ी
  • ऐप क्लिप
  • आज विजेट

... और iCloud का उपयोग करें।

ICloud को चालू और बंद करना हमारे लिए कोई विकल्प नहीं था। हम पहले से ही इसे उत्पादन में उपयोग करते हैं और इसके साथ खिलवाड़ नहीं करते हैं ... मुझे मूल प्रश्न का संदेश मिला है और कुछ बिंदु पर यह भिन्नता भी है:

प्रोफ़ाइल एप्लिकेशन-पहचानकर्ता और किचेन-एक्सेस-ग्रुप एंटाइटेलमेंट के लिए एंटाइटेलमेंट फ़ाइल के मूल्यों से मेल नहीं खाती।

समाधान

यहां अन्य प्रतिक्रियाओं से संकेत मिलता है, हमने सुनिश्चित किया कि सभी लक्ष्यों में एक .entitlementsफ़ाइल होगी। यदि लक्ष्य के पास कोई नहीं था तो हमने एक खाली जगह बनाई जैसे:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

... और बताया कि यह खाली फ़ाइल के लिए लक्ष्य Code Signing Entitlementहै ।Build Settings.entitlements

हल किया!


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.