問題描述
我不知道應(yīng)該使用哪些庫來開發(fā)管理 Google 電子表格的 Android 應(yīng)用.我需要連接、復(fù)制、編輯、讀取用戶電子表格,但我今天不明白這是哪種方式.
I can't get which libs i should use for developing an Android app that menages Google spreadsheet. I need connecting, copying, editing, reading from a user spreadsheet but i can't understand today which is the way.
Google Drive Api : https://developers.google.com/drive/
Google Spreadsheet Api: https://developers.google.com/google-apps/spreadsheets/
Google APi java client: http://code.google.com/p/google-api-java-client/
哪個(gè)是正確的?
推薦答案
最后我用到的庫是:
gdata-client-1.0.jar
gdata-client-meta-1.0.jar
gdata-core-1.0.jar
gdata-spreadsheet-3.0.jar
gdata-spreadsheet-meta-3.0.jar
google-api-client-1.12.0-beta.jar
google-api-client-android-1.12.0-beta.jar
google-http-client-1.12.0-beta.jar
google-http-client-android-1.12.0-beta.jar
google-oauth-client-1.12.0-beta.jar
gson-2.1.jar
guava-13.0.1.jar
jackson-core-asl-1.9.9.jar
jsr305-1.3.9.jar
protobuf-java-2.4.1.jar
正如 Eugenio 所建議的(謝謝!!!)我將電子表格 api 中的庫與 java-client-api 混合",在身份驗(yàn)證后,我使用以下內(nèi)容獲取單元格
As suggested by Eugenio (thanks for that!!!) i "mixed" libraries from spreadsheet api with the java-client-api and after the authentication i used the following for getting the cells
SpreadsheetEntry spreadsheet = null;
URL metafeedUrl = new URL("https://spreadsheets.google.com/feeds/spreadsheets/private/full");
SpreadsheetFeed spreadsheetFeed = service.getFeed(metafeedUrl, SpreadsheetFeed.class);
List<SpreadsheetEntry> spreadsheets = spreadsheetFeed.getEntries();
for (SpreadsheetEntry entry : spreadsheets) {
if (entry.getTitle().getPlainText().equals(spreadsheetTitle)) {
spreadsheet = entry;
}
}
if (spreadsheet == null) {
throw new FileNotFoundException("Cannot find the required spreadsheet '" + spreadsheetTitle + "'");
}
WorksheetEntry worksheet = null;
WorksheetFeed worksheetFeed = service.getFeed(spreadsheet.getWorksheetFeedUrl(), WorksheetFeed.class);
List<WorksheetEntry> worksheets = worksheetFeed.getEntries();
for (WorksheetEntry entry : worksheets) {
if (entry.getTitle().getPlainText().equals(worksheetTitle)) {
worksheet = entry;
}
}
if (worksheet == null) {
throw new FileNotFoundException("Cannot find the required worksheet '" + worksheetTitle + "'");
}
URL listFeedUrl = worksheet.getListFeedUrl();
ListFeed listFeed = service.getFeed(listFeedUrl, ListFeed.class);
目前我使用的是最差"的身份驗(yàn)證系統(tǒng),我應(yīng)該在 OAuth2 中打開它,但目前 ClientLogin 是以這種方式完成的:
For the moment i used the "worst" authentication system and i should turn this in the OAuth2 but for the moment the ClientLogin is done in this way:
SpreadsheetService service = new SpreadsheetService("v1");
service.setProtocolVersion(SpreadsheetService.Versions.V3);
service.setUserCredentials(email, password);
這篇關(guān)于Android - 谷歌電子表格 API的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!