Java क्लाइंट लाइब्रेरी का इस्तेमाल शुरू करना

Java क्लाइंट लाइब्रेरी के साथ Google Photos Library API का इस्तेमाल शुरू करने के लिए, आपको अपने डेवलपमेंट एनवायरमेंट में क्लाइंट लाइब्रेरी सेट अप करनी होगी. ऐसा करने से पहले, Google API (एपीआई) कंसोल के ज़रिए एपीआई चालू करके और OAuth 2.0 क्लाइंट आईडी सेट अप करके अपना प्रोजेक्ट कॉन्फ़िगर करें.

आपका ऐप्लिकेशन, Google Photos के किसी उपयोगकर्ता की तरफ़ से Google Photos से इंटरैक्ट करता है. उदाहरण के लिए, जब किसी उपयोगकर्ता की Google Photos लाइब्रेरी में एल्बम बनाए जाते हैं या उसके Google Photos खाते में मीडिया आइटम अपलोड किए जाते हैं, तो उपयोगकर्ता इन एपीआई अनुरोधों को OAuth 2.0 प्रोटोकॉल की मदद से अनुमति देता है.

OAuth 2.0 क्लाइंट आईडी की मदद से, आपके ऐप्लिकेशन के उपयोगकर्ताओं को साइन इन करने, पुष्टि करने, और लाइब्रेरी API का इस्तेमाल करने की सुविधा मिलती है. Library API, सेवा खातों के साथ काम नहीं करता. इस एपीआई का इस्तेमाल करने के लिए, यह ज़रूरी है कि उपयोगकर्ताओं ने किसी मान्य Google खाते में साइन इन किया हो.

अपने ऐप्लिकेशन को कॉन्फ़िगर करें

एपीआई चालू करें

Library API का इस्तेमाल करने से पहले, आपको इसे अपने प्रोजेक्ट के लिए चालू करना होगा.

  1. Google के एपीआई कंसोल पर जाएं.
  2. मेन्यू बार से, कोई प्रोजेक्ट चुनें या नया प्रोजेक्ट बनाएं.
  3. Google API लाइब्रेरी खोलने के लिए, नेविगेशन मेन्यू से, एपीआई और सेवाएं > लाइब्रेरी को चुनें.
  4. "Google Photos Library API" खोजें. सही नतीजा चुनें और चालू करें पर क्लिक करें.

OAuth 2.0 क्लाइंट आईडी का अनुरोध करना

OAuth क्लाइंट आईडी का अनुरोध करने और उसे अपने ऐप्लिकेशन के लिए कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं. इस उदाहरण में ऐसे ऐप्लिकेशन का इस्तेमाल किया जाता है जहां पूरे OAuth फ़्लो को सर्वर-साइड से हैंडल किया जाता है. जैसे, हमारे सैंपल में मौजूद एक. लागू करने की अन्य स्थितियों के लिए, सेटअप करने की प्रोसेस अलग-अलग हो सकती है.

  1. Google API कंसोल पर जाएं और अपना प्रोजेक्ट चुनें.
  2. मेन्यू में जाकर, एपीआई और सेवाएं > क्रेडेंशियल चुनें.
  3. क्रेडेंशियल पेज पर, क्रेडेंशियल बनाएं > OAuth क्लाइंट आईडी पर क्लिक करें.
  4. अपने ऐप्लिकेशन का टाइप चुनें. इस उदाहरण में, ऐप्लिकेशन का टाइप वेब ऐप्लिकेशन है.
  5. उन ऑरिजिन को यहां बताए गए तरीके से रजिस्टर करें जिनसे आपके ऐप्लिकेशन को Google API ऐक्सेस करने की अनुमति है:

    1. क्लाइंट आईडी की पहचान करने के लिए, कोई नाम डालें.
    2. अनुमति वाले JavaScript ऑरिजिन फ़ील्ड में, अपने ऐप्लिकेशन का ऑरिजिन डालें. यह फ़ील्ड वाइल्डकार्ड की अनुमति नहीं देता है.

      अपने ऐप्लिकेशन को अलग-अलग प्रोटोकॉल, डोमेन या सबडोमेन पर चलाने की अनुमति देने के लिए, एक से ज़्यादा ऑरिजिन डाले जा सकते हैं. आपने जो यूआरएल डाले हैं उन्हें OAuth अनुरोध शुरू करने की अनुमति है.

      इस उदाहरण में, लोकल डेवलपमेंट यूआरएल (हमारे सैंपल localhost:8080 का इस्तेमाल करते हैं) और प्रोडक्शन यूआरएल दिखाया गया है.

      http://localhost:8080
      https://myproductionurl.example.com
      
    3. अनुमति वाला रीडायरेक्ट यूआरआई फ़ील्ड वह एंडपॉइंट है जिसे OAuth 2.0 सर्वर से रिस्पॉन्स मिलते हैं. आम तौर पर, इसमें आपका डेवलपमेंट एनवायरमेंट शामिल होता है और यह आपके ऐप्लिकेशन के पाथ की जानकारी देता है.

      http://localhost:8080/auth/google/callback
      https://myproductionurl.example.com/auth/google/callback
      
    4. बनाएं पर क्लिक करें.

  1. OAuth क्लाइंट डायलॉग बॉक्स में, अपने क्लाइंट कॉन्फ़िगरेशन वाली JSON फ़ाइल डाउनलोड करें. आपके क्लाइंट की जानकारी में ये चीज़ें शामिल होती हैं:

    • Client ID
    • क्लाइंट सीक्रेट

    इस JSON फ़ाइल का इस्तेमाल, बाद में Java के लिए Google Auth लाइब्रेरी को सेट अप करने के लिए किया जाएगा, जो इस क्लाइंट लाइब्रेरी के साथ काम करती है.

Library API को ऐक्सेस करने वाला कोई सार्वजनिक ऐप्लिकेशन लॉन्च करने से पहले, Google आपके ऐप्लिकेशन की समीक्षा कर लेगा. अपने ऐप्लिकेशन की जांच करने के बाद, स्क्रीन पर "ऐसा ऐप्लिकेशन जिसकी पुष्टि नहीं हुई है" मैसेज दिखता है. यह मैसेज तब तक दिखता है, जब तक इसकी पुष्टि नहीं हो जाती.

क्लाइंट लाइब्रेरी सेट अप करना

Java क्लाइंट लाइब्रेरी, आपके लिए सभी बैकएंड एपीआई कॉल को हैंडल करती है. साथ ही, यह कुछ सामान्य एपीआई टास्क के लिए, कोड सैंपल के साथ-साथ काम करने के लिए कुछ मज़ेदार ऑब्जेक्ट दिखाती है. सबसे पहले, Java के लिए Google Photos Library API क्लाइंट लाइब्रेरी को डाउनलोड और इंस्टॉल करें. साथ ही, GitHub की डिपेंडेंसी भी इंस्टॉल करें. इसके बाद, Java के लिए अपने OAuth2 क्रेडेंशियल सेट अप करें.

डाउनलोड करने के विकल्प

क्लाइंट लाइब्रेरी डाउनलोड करने के कुछ विकल्प यहां दिए गए हैं:

  • gradle डिपेंडेंसी:

    इस लाइब्रेरी का इस्तेमाल Gradle के साथ करने के लिए, अपनी build.gradle फ़ाइल में यह डिपेंडेंसी जोड़ें.

    repositories {
      mavenCentral()
    }
    dependencies {
      compile 'com.google.photos.library:google-photos-library-client:1.7.3'
    }
    
  • Maven डिपेंडेंसी:

    इस लाइब्रेरी को Maven के साथ इस्तेमाल करने के लिए, अपनी Maven pom.xml फ़ाइल में ये जोड़ें.

    <dependency>
      <groupId>com.google.photos.library</groupId>
      <artifactId>google-photos-library-client</artifactId>
      <version>1.7.3</version>
    </dependency>
    
  • रिलीज़ डाउनलोड करना:

    रिलीज़ पेज में हर लाइब्रेरी रिलीज़ के लिए अलग-अलग आर्टफ़ैक्ट होते हैं, जिनमें जार फ़ाइलें शामिल हैं.

  • डेटा स्टोर करने की जगह का क्लोन बनाएं:

    अगर आपको इस लाइब्रेरी में बदलाव करना है या इसमें योगदान देना है, तो यह तरीका अपनाएं. उदाहरण के लिए, पुल के अनुरोध सबमिट करना या हमारे सैंपल आज़माना. डेटा स्टोर करने की जगह का क्लोन बनाने पर, इस डेटा स्टोर करने की सभी फ़ाइलें डाउनलोड हो जाएंगी.

    1. कमांड प्रॉम्प्ट पर git clone https://github.com/google/java-photoslibrary.git चलाएं.
    2. आपको एक java-photoslibrary डायरेक्ट्री मिलेगी. cd java-photoslibrary चलाकर इस पर नेविगेट करें.
    3. प्रोजेक्ट बनाने के लिए, अपने IDE में build.gradle फ़ाइल खोलें या कमांड प्रॉम्प्ट पर ./gradlew assemble चलाएं. उपलब्ध टास्क देखने के लिए, ./gradlew tasks पर जाएं.

Java के लिए, अपने OAuth2 क्रेडेंशियल सेट अप करना

यह क्लाइंट लाइब्रेरी Java के लिए Google ऑथराइज़ेशन लाइब्रेरी के साथ काम करती है. ज़्यादा जानकारी के लिए, Java के लिए Google एपीआई क्लाइंट लाइब्रेरी के साथ OAuth 2.0 का इस्तेमाल करना देखें.

किसी PhotosLibraryClient ऑब्जेक्ट के लिए PhotoLibrarySettings बनाते समय, CredentialsProvider में अपना क्लाइंट OAuth कॉन्फ़िगरेशन तय करें.

कुछ सैंपल आज़माएं

Java क्लाइंट लाइब्रेरी का इस्तेमाल करके, पहली बार एपीआई कॉल करने के लिए, नीचे दिया गया कोड आज़माएं.

// Set up the Photos Library Client that interacts with the API
PhotosLibrarySettings settings =
     PhotosLibrarySettings.newBuilder()
    .setCredentialsProvider(
        FixedCredentialsProvider.create(/* Add credentials here. */)) 
    .build();

try (PhotosLibraryClient photosLibraryClient =
    PhotosLibraryClient.initialize(settings)) {

    // Create a new Album  with at title
    Album createdAlbum = photosLibraryClient.createAlbum("My Album");

    // Get some properties from the album, such as its ID and product URL
    String id = album.getId();
    String url = album.getProductUrl();

} catch (ApiException e) {
    // Error during album creation
}

GitHub पर ऐसे कुछ और सैंपल मौजूद हैं जिन्हें आज़माया जा सकता है.