الوصول إلى Google APIs بسهولة من Java
إنّ "مكتبة برامج Google API" للغة Java توفّر وظائف شائعة في جميع Google APIs، مثل نقل HTTP ومعالجة الأخطاء والمصادقة وتحليل JSON وتنزيل الوسائط/تحميلها المجمّع. تتضمّن المكتبة مكتبة OAuth 2.0 فعّالة مع واجهة متسقة، ونماذج بيانات XML وJSON خفيفة وفعّالة تتوافق مع أي مخطط بيانات، وتوفر مخازن البروتوكولات المؤقتة.
لاستدعاء واجهة برمجة تطبيقات Google باستخدام مكتبات عملاء Google's للغة Java، تحتاج إلى مكتبة Java التي تم إنشاؤها لواجهة برمجة تطبيقات Google التي تصل إليها. وتتضمن هذه المكتبات التي تم إنشاؤها مكتبة google-api-java-client الأساسية إلى جانب معلومات خاصة بواجهة برمجة التطبيقات، مثل عنوان URL الجذر. كما تتضمّن أيضًا الفئات التي تمثّل الكيانات في سياق واجهة برمجة التطبيقات، والتي تكون مفيدة لإجراء الإحالات الناجحة بين كائنات JSON وكائنات Java.
لاستدعاء واجهة برمجة تطبيقات Google باستخدام مكتبات عملاء Google's للغة Java، تحتاج إلى مكتبة Java التي تم إنشاؤها لواجهة برمجة تطبيقات Google التي تصل إليها. وتتضمن هذه المكتبات التي تم إنشاؤها مكتبة google-api-java-client الأساسية إلى جانب معلومات خاصة بواجهة برمجة التطبيقات، مثل عنوان URL الجذر. كما تتضمّن أيضًا الفئات التي تمثّل الكيانات في سياق واجهة برمجة التطبيقات، والتي تكون مفيدة لإجراء الإحالات الناجحة بين كائنات JSON وكائنات Java.
الميزات التي تم إيقافها نهائيًا
وستتم إزالة الميزات غير التجريبية التي تم إيقافها نهائيًا بعد ثمانية عشر شهرًا من تاريخ الإصدار الذي تم إيقافها فيه لأول مرة. عليك إصلاح حالات الاستخدام قبل هذا الوقت. وإذا لم تفعل ذلك، قد ينتج أي نوع من الأعطال، ولا يمكنك ضمان حدوث خطأ في التحويل البرمجي.
أبرز النقاط في مكتبة برامج Google API للغة Java
من السهل استدعاء Google APIs
يمكنك استدعاء واجهات Google APIs باستخدام المكتبات التي تم إنشاؤها خصيصًا لخدمة Google باستخدام مكتبة برامج Google API للغة Java. (للعثور على مكتبة العميل التي تم إنشاؤها لواجهة برمجة تطبيقات Google، انتقِل إلى قائمة واجهات برمجة تطبيقات Google المتوافقة). في ما يلي مثال يستخدم مكتبة برامج واجهة برمجة تطبيقات التقويم للغة Java لإجراء اتصال بواجهة برمجة تطبيقات "تقويم Google":
// 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 على تنفيذ الطلبات التي تمت المصادقة عليها إلى واجهات برمجة التطبيقات، ولا داعي للقلق بشأن تبادل الرموز المميزة مع الرموز المميزة.
على سبيل المثال:
على سبيل المثال:
@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 أو إصدار أحدث.
إنّ فئات المساعدة الخاصة بنظام التشغيل Android في "مكتبة برامج Google للعملاء" من Java مدمجة بشكل جيد مع 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 Client Library للغة Java مباشرةً من صفحة عمليات التنزيل، أو يمكنك استخدام Maven أو Gradle. لاستخدام Maven، أضِف الأسطر التالية إلى ملف pom.xml:
لاستخدام Gradle، أضِف الأسطر التالية إلى ملف create.gradle:
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
لاستخدام Gradle، أضِف الأسطر التالية إلى ملف create.gradle:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }لمزيد من التفاصيل حول تثبيت واجهة Google API وإعدادها مكتبة العملاء لـ Java، راجع تنزيل وتعليمات الإعداد.
البيئات المتوافقة
تتوافق مكتبة برامج Google API للغة Java مع بيئات جافا التالية:
- الإصدار 7 أو أعلى من الإصدار العادي (SE) والإصدار Enterprise (EE).
- Google App Engine
- الإصدار 4.4 من نظام Android أو الإصدارات الأحدث، ولكن في حال توفّر مكتبة خدمات Google Play لخدمة Google التي تحتاجها، يمكنك استخدام تلك المكتبة بدلاً من هذه المكتبة. تقدم لك مكتبة Google Play أفضل أداء وأفضل تجربة ممكنة.