2013-02-01 4 views
3

셀 데이터를 얻기 위해 항상 동일한 Google 스프레드 시트에 연결하는 안드로이드 응용 프로그램이 필요합니다. (미래에 매일 변경되어 응용 프로그램이 서버를 사용하지 않고 업데이트 된 데이터를 가져올 수 있습니다.)Google 스프레드 시트에서 직접 데이터를 가져 오는 방법은 무엇입니까?

https://docs.google.com/spreadsheet/ccc?key=xxx ....

그건 가능 : 문서 https://developers.google.com/google-apps/spreadsheets/?hl=it#ListFeeds에서

등을 인증 할 수 있지만 같은 직선 링크를 사용하여 공용 스프레드 시트로 내가 될 필요를 연결하는 방법을 보여이야?

+0

그것은 가능하다 "파일 -> 웹에 게시"! 나는 이것을위한 js lib를 코딩했으나 안드로이드 (Didnt check)에 대해서는 코딩하지 않았다. [Gsheet2json] (http://rumal.github.com/Gsheet2json/) 도서관 일 수도 있고 코드가 안드로이드로 이식하는 데 도움이 될 수도 있습니다 – udnisap

답변

3

이 가능, 몇 가지 예 http://blog.restphone.com/2011/05/very-simple-google-spreadsheet-code.html

당신은 스프레드 시트에 수동으로 추가 할 필요가 기억 제임스 무어의 코드가 될 수

package com.banshee; 

    import java.io.IOException; 
    import java.net.URL; 

    import com.google.gdata.client.spreadsheet.SpreadsheetService; 
    import com.google.gdata.data.spreadsheet.CustomElementCollection; 
    import com.google.gdata.data.spreadsheet.ListEntry; 
    import com.google.gdata.data.spreadsheet.ListFeed; 
    import com.google.gdata.util.ServiceException; 

    public class SpreadsheetSucker { 
     public static void main(String[] args) { 
     SpreadsheetService service = new SpreadsheetService("com.banshee"); 
     try { 
      // Notice that the url ends 
      // with default/public/values. 
      // That wasn't obvious (at least to me) 
      // from the documentation. 
      String urlString = "https://spreadsheets.google.com/feeds/list/0AsaDhyyXNaFSdDJ2VUxtVGVWN1Yza1loU1RPVVU3OFE/default/public/values"; 

      // turn the string into a URL 
      URL url = new URL(urlString); 

      // You could substitute a cell feed here in place of 
      // the list feed 
      ListFeed feed = service.getFeed(url, ListFeed.class); 

      for (ListEntry entry : feed.getEntries()) { 
      CustomElementCollection elements = entry.getCustomElements(); 
      String name = elements.getValue("name"); 
      System.out.println(name); 
      String number = elements.getValue("Number"); 
      System.out.println(number); 
      } 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } catch (ServiceException e) { 
      e.printStackTrace(); 
     } 

     } 
    } 
+0

이것은 나를 위해 일했습니다 !!! guava.jar (my proj에 guava-18.jar), 매니페스트 파일 추가 권한, 마지막으로 ThreadPolicy를 PermitAll()에 추가해야한다는 것을 기억해야합니다. 그게 전부예요 : –

+0

Google에서 시트의 데이터에 액세스하기 위해 OAuth2.0을 의무화 했으므로 더 이상 지원되지 않습니다. 스프레드 시트 데이터에 JSON으로 액세스하고 앱의 끝에 구문 분석하여 해결 방법이 아직 있습니다. 액세스 JSON URL을 사용하여 : https://spreadsheets.google.com/tq?key=를 예컨대 : https://spreadsheets.google.com/tq?key=1tJ64Y8hje0ui4ap9U33h3KWwpxT_-JuVMSZzxD2Er8k –

관련 문제