เข้าถึง Google APIs จาก Java ได้อย่างง่ายดาย
![](https://developers.google.cn/static/api-client-library/java/images/banner-java-3.png?authuser=19&%3Bhl=th&hl=th)
ไลบรารีของไคลเอ็นต์ Google API สําหรับ Java มีฟังก์ชันที่ใช้ได้กับ Google API ทั้งหมด เช่น การรับส่งข้อมูล HTTP, การจัดการข้อผิดพลาด, การตรวจสอบสิทธิ์, การแยกวิเคราะห์ JSON, การดาวน์โหลด/อัปโหลดสื่อ และการจัดกลุ่ม ไลบรารีดังกล่าวมีไลบรารี OAuth 2.0 ที่มีประสิทธิภาพซึ่งมีอินเทอร์เฟซที่สอดคล้องกัน โมเดลข้อมูล XML และ JSON ที่มีประสิทธิภาพและมีน้ําหนักเบา ซึ่งรองรับสคีมาข้อมูลทุกรูปแบบ และรองรับบัฟเฟอร์โปรโตคอล
หากต้องการเรียกใช้ Google API โดยใช้ไลบรารีของไคลเอ็นต์ Google สําหรับ Java คุณต้องมีไลบรารี Java ที่สร้างขึ้นสําหรับ Google API ที่คุณกําลังเข้าถึง ไลบรารีที่สร้างขึ้นเหล่านี้ประกอบด้วยไลบรารีหลัก google-api-java-client พร้อมด้วยข้อมูลเฉพาะของ API เช่น URL ราก นอกจากนี้ยังมีคลาสที่แสดงเอนทิตีในบริบทของ API และมีประโยชน์สําหรับการทํา Conversion ระหว่างออบเจ็กต์ JSON และออบเจ็กต์ Java
หากต้องการเรียกใช้ Google API โดยใช้ไลบรารีของไคลเอ็นต์ Google สําหรับ Java คุณต้องมีไลบรารี Java ที่สร้างขึ้นสําหรับ Google API ที่คุณกําลังเข้าถึง ไลบรารีที่สร้างขึ้นเหล่านี้ประกอบด้วยไลบรารีหลัก google-api-java-client พร้อมด้วยข้อมูลเฉพาะของ API เช่น URL ราก นอกจากนี้ยังมีคลาสที่แสดงเอนทิตีในบริบทของ API และมีประโยชน์สําหรับการทํา Conversion ระหว่างออบเจ็กต์ JSON และออบเจ็กต์ Java
ฟีเจอร์ที่เลิกใช้งาน
ฟีเจอร์ที่ไม่ใช่รุ่นเบต้าและเลิกใช้งานจะถูกนำออก 18 เดือนหลังจากการเปิดตัวซึ่งจะเลิกใช้งานครั้งแรก คุณต้องแก้ไขการใช้งานก่อนเวลาดังกล่าว หากไม่ดำเนินการดังกล่าว อาจเกิดความเสียหายประเภทใดก็ตาม และไม่รับประกันว่าคุณจะมีข้อผิดพลาดในการรวบรวม
ไฮไลต์ของไลบรารีของไคลเอ็นต์ Google API สำหรับ Java
เรียกใช้ Google API ได้ง่ายๆ
คุณสามารถเรียกใช้ Google APIs โดยใช้ไลบรารีที่สร้างขึ้นเฉพาะบริการของ Google ด้วยไลบรารีของไคลเอ็นต์ Google API สำหรับ Java (หากต้องการค้นหาไลบรารีของไคลเอ็นต์ที่สร้างขึ้นสำหรับ Google API โปรดดูรายการ Google API ที่รองรับ) ตัวอย่างการใช้ไลบรารีของไคลเอ็นต์ 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 สำหรับชั้นเรียนผู้ช่วยสำหรับ Android สำหรับ 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 ของคุณ
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการติดตั้งและตั้งค่า Google API
ไลบรารีของไคลเอ็นต์สำหรับ 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) และ enterprise (EE)
- Google App Engine
- Android 4.4 ขึ้นไป แต่หากไลบรารีบริการ Google Play พร้อมใช้งานสำหรับบริการ Google ที่คุณต้องการ ให้ใช้ไลบรารีนั้นแทนไลบรารีนี้ คลัง Google Play ช่วยให้คุณได้รับประสิทธิภาพและประสบการณ์การใช้งานที่ดีที่สุด