部落客廣告聯播

2011年1月21日 星期五

Android與Google Spreadsheet Data API



今天在Android的專案中使用Google官方下載的Spreadsheet Data API jar檔,
寫了程式要從Google試算表擷取資料,沒寫到在模擬器執行時卻發生了錯誤:

  
  ERROR/AndroidRuntime(3522): *java.lang.VerifyError:  com.google.gdata.client.Service*


看來Google官方的GData API java client library似乎不能在Android上正常使用,
我寫了一個下午的程式沒想到在執行時才知道,真是浪費我的生命呀~

找了資料似乎一直沒看到有人提到在Android中存取Google Spreadsheet的java library,
在努力不懈找了許久發現了這篇網誌:


Google SpreadSheet Library for Android



網誌作者提到說自己開了個專案,主要就是開發一個能在Android上存取Google Spreadsheet的library,該專案已經hosting在Google code了:
http://code.google.com/p/google-spreadsheet-lib-android/

找時間在試試看了,先感謝這位印度的Prasanta Paul囉~

另外,Google Spreadsheet列數、欄數、儲存格數限制請參考:
http://www.google.com/support/forum/p/Google%20Docs/thread?tid=6248d49306db8a85&hl=en

2011年1月20日 星期四

2011年1月6日 星期四

GAE/J 的servlet request計時器與cron service


在GAE上寫了程式要透過cron服務排程來撈取網頁資料存進data store,
當寫好servlet直接使用瀏覽器觸發servlet url執行, 由於我撈的資料較多處理時間較常,沒想到就出現了exception了。

原來在GAE上的request是有時間限制的,若request進來處理了30秒還沒完成就會被終止並丟出exception,詳閱: http://code.google.com/intl/zh-TW/appengine/docs/java/runtime.html#The_Request_Timer

GAE上的排程乃是經由定義cron.xml讓GAE的cron service在設定的時間點或區間觸發我們servlet程式的URL。

然而好消息是最近新的GAE1.4版,把Cron service的30秒限制拿掉了,也就是說經由Cron觸發的servlet的最大處理時限是10分鐘,太棒啦。(詳見:http://googleappengine.blogspot.com/2010/12/happy-holidays-from-app-engine-team-140.html

另外發現許多的GAE英文文件在中文的文件中是沒有的,比如說像是Task Queue(http://code.google.com/intl/en/appengine/docs/java/taskqueue/),所以看完中文版的官方文件(http://code.google.com/intl/zh-TW/appengine/docs/)後還是要再去逛逛英文版的文件(http://code.google.com/intl/en/appengine/docs/)看看有沒有其他可參考的有用資訊~

另外有個東西讓我搞了很久,就是cron.xml裡面若有中文字可是會Deploy失敗的

2011年1月1日 星期六