גישה נוחה לממשקי Google API מתוך Java
ספריית הלקוח של Google API ל-Java מספקת פונקציונליות משותפת לכל ממשקי ה-API של Google. לדוגמה, העברת HTTP, טיפול בשגיאות, אימות, ניתוח JSON, הורדה/העלאה של מדיה וקיבוץ. הספרייה כוללת ספריית OAuth 2.0 מתקדמת עם ממשק עקבי; מודלים קלים ויעילים של נתוני XML ו-JSON שתומכים בכל סכימת נתונים; תמיכה במאגרי אחסון לפרוטוקולים.
כדי להתקשר ל-Google API באמצעות ספריות לקוח של Google', יש להשתמש בספריית Java שנוצרה עבור Google API שאליו מתבצעת גישה. ספריות שנוצרו כוללות את ספריית הליבה של google-api-Java-client יחד עם מידע ספציפי ל-API, כמו כתובת האתר הבסיסית. הן גם כוללות מחלקות שמייצגות ישויות בהקשר של ה-API, והן מועילות לביצוע המרות בין אובייקטים של JSON לבין אובייקטים של Java.
כדי להתקשר ל-Google API באמצעות ספריות לקוח של Google', יש להשתמש בספריית Java שנוצרה עבור Google API שאליו מתבצעת גישה. ספריות שנוצרו כוללות את ספריית הליבה של google-api-Java-client יחד עם מידע ספציפי ל-API, כמו כתובת האתר הבסיסית. הן גם כוללות מחלקות שמייצגות ישויות בהקשר של ה-API, והן מועילות לביצוע המרות בין אובייקטים של JSON לבין אובייקטים של Java.
תכונות שהוצאו משימוש
תכונות שאינן בגרסת בטא שהוצאו משימוש יוסרו 18 חודשים לאחר הפרסום שבו הן הוצאו משימוש לראשונה. עליך לתקן את השימושים שלך לפני המועד הזה. אם לא תעשו זאת, תיתכן שבירה מכל סוג שהוא ולא מובטחת לכם שגיאת הידור.
המיטב של ספריית הלקוח של Google API עבור Java
ממש קל לקרוא ל-Google APIs
באמצעות ספריית הלקוח של Google API ל-Java אפשר לקרוא לממשקי ה-API של Google באמצעות ספריות שנוצרות על ידי שירות Google ספציפי. (כדי למצוא את ספריית הלקוח שנוצרה עבור Google API, בקר ברשימת ממשקי ה-API הנתמכים של Google). לפניכם דוגמה שמשתמשת בספריית הלקוח של Calendar API ל-Java כדי לבצע קריאה ל-Google Calendar API:
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
הספרייה מקלה על קיבוץ והורדה של קובצי מדיה
הספרייה מציעה כיתות עזרה ליצירת מקבצים, העלאת מדיה והורדת מדיה.באמצעות הספרייה קל יותר לבצע אימות
הספרייה כוללת ספריית אימות חזקה שיכולה להפחית את כמות הקוד שדרושה לטיפול ב-OAuth 2.0. לפעמים צריך רק כמה שורות. לדוגמה:
/** Authorizes the installed application to access user's protected data. */ private static Credential authorize() throws Exception { // load client secrets GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(CalendarSample.class.getResourceAsStream("/client_secrets.json"))); // set up authorization code flow GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( httpTransport, JSON_FACTORY, clientSecrets, Collections.singleton(CalendarScopes.CALENDAR)).setDataStoreFactory(dataStoreFactory) .build(); // authorize return new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user"); }
הספרייה פועלת ב-Google App Engine
עוזרים ספציפיים ל-App Engine מבצעים במהירות קריאות מאומתות לממשקי API, ואין צורך להחליף קוד באסימונים.
לדוגמה:
לדוגמה:
@Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { AppIdentityCredential credential = new AppIdentityCredential(Arrays.asList(UrlshortenerScopes.URLSHORTENER)); Urlshortener shortener = new Urlshortener.Builder(new UrlFetchTransport(), new JacksonFactory(), credential) .build(); UrlHistory history = shortener.URL().list().execute(); ... }
הספרייה פועלת ב-Android מגרסה 4.4 ואילך.
ספריית הלקוח של Google לכיתות המסייע הספציפיות של Java ל-Android משולבת היטב ב-Android AccountManager. לדוגמה:
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Google Accounts credential = GoogleAccountCredential.usingOAuth2(this, Collections.singleton(TasksScopes.TASKS)); SharedPreferences settings = getPreferences(Context.MODE_PRIVATE); credential.setSelectedAccountName(settings.getString(PREF_ACCOUNT_NAME, null)); // Tasks client service = new com.google.api.services.tasks.Tasks.Builder(httpTransport, jsonFactory, credential) .setApplicationName("Google-TasksAndroidSample/1.0").build(); }
ההתקנה קלה
אם אתם לא משתמשים בספרייה שנוצרה, תוכלו להוריד את הקובץ הבינארי לספריית הלקוח של Google API עבור Java ישירות מדף ההורדות, או להשתמש ב-Maven או ב-Gradle. כדי להשתמש ב-Maven, צריך להוסיף את השורות הבאות לקובץ ה-pom.xml:
כדי להשתמש ב-Gradle, צריך להוסיף את השורות הבאות לקובץ build.gradle:
לפרטים נוספים על התקנה והגדרה של ממשק ה-API של Google
לספריית הלקוח ל-Java,
הורדה
והוראות הגדרה.
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
כדי להשתמש ב-Gradle, צריך להוסיף את השורות הבאות לקובץ build.gradle:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }
סביבות נתמכות
ספריית הלקוח של Google API עבור Java תומכת בסביבות Java הבאות:
- Java 7 ואילך, גרסה רגילה (SE) וגרסה ארגונית (EE).
- Google App Engine.
- Android מגרסה 4.4 ואילך — אבל אם ספרייה של Google Play Services זמינה עבור שירות Google הדרוש לך, יש להשתמש בספרייה הזו במקום בספרייה הזו. ספריית Google Play תספק לך את הביצועים והחוויה הכי טובים שאפשר.