編譯ownCloud for Android
之前介紹過ownCloud私有雲服務了,下面講一下怎么自己編譯它的Android客戶端。之所以要自己編譯,原因有兩點:
- ownCloud在Play Store上要收費的,0.99刀
- ownCloud在Play Store上限制了區域,即使願意出錢也不能下載
搭建一個Android SDK環境不要我說了吧?不會的自己找塊Google這樣的豆腐撞了……下面以XUbuntu 14.04 為例,講一下我的過程。
首先是owncloud的源碼下載
官網 https://owncloud.org/ 雲存儲器網址 https://demo.owncloud.org/ test test Android代碼路徑 https://github.com/owncloud/android https://github.com/owncloud/android-library https://github.com/JakeWharton/ActionBarSherlock 最新android-support-v4.jar http://download.csdn.net/detail/beyond_liyy/8771329
先下載android-sdk-linux解壓並設置好環境變量(Android官網都有說明,照着做就好了)。對於64位系統,需要安裝32位的包,不然aapt這樣的預編譯好的程序會出錯。還需要安裝ant(ownCloud編譯要求的)。
安裝完畢后,設置JAVA的環境變量(因為我之前裝過oracle的jdk,現在換成openjdk所以要手工改,並不知道系統安裝openjdk的話,環境變量會不會自動設置,還是手動設置一下吧)。修改~/.bashrc添加幾行如下:
export JAVA_HOME=/usr/lib/jvm/java-openjdk/
export JRE_HOME=$JAVA_HOME/jre
在終端下輸入android打開Android SDK Manager,安裝好Android 2.3.3、4.0、4.2.2的SDK Platform,那個tools里面的platform-tools也要安裝。你知道該死的dl-ssl.google.com偶爾也被牆了的,所以在Options里面設置讓它強制使用http而不是https,並且修改好系統的hosts(為保護可用的IP地址,點到為止)。更新完畢后,下面准備ownCloud的編譯了。
git clone git://github.com/owncloud/android.git
git clone git://github.com/owncloud/android-library.git
然后導入Android studio中
如果你的環境變量設置后沒有重啟讓它生效,你需要先執行source ~/.bashrc加載一下,免得中間編譯出錯。等幾分鍾編譯就好了,文件在bin文件夾下,名為“ownCloud-release-unsigned.apk”,還沒有簽名的,不能直接拖到手機/平板里安裝(當然你可以adb push的辦法直接push進去)。所以需要對apk進行簽名。網上簽名的教程很多,從生成密鑰到簽名,太麻煩了……就為了一個程序,而且又不是自己寫的要去Play上發布,所以就直接down一個簽名工具簽名完事啦~
下載對應的 signapk.jar platform.x509.pem platform.pk8
java -jar $toolDir/signapk.jar $toolDir/platform.x509.pem $toolDir/platform.pk8 no-sign.apk des-sign.apk
成品APK在此,需要下載的直接下載吧。(「中國標准時間」2018-03-02中午編譯)