發表文章

目前顯示的是 2011的文章

Pandaboard編譯Launcher

要編譯pandaboard的Launcher可以由下載下來的原始碼中取得,位置在 /mydroid/packages/apps裡面,我們可以將Launcher2的整個目錄copy下來,然後貼到eclipse中你所指定的workspace中。 再來就是新增一個android的專案,專案名稱就取名叫Launcher2。 OK!接下來就新增一個Android Project 選擇 Create project from existing source,source 來源選擇剛剛的Launcher2資料夾,Android SDK 選擇2.3.3,專案生成後會出現很多錯誤的 紅色XX,可以不必理會,滑鼠指到專案Launcher2按下右鍵選擇功能表的 Android Tools->Export Unsigned Application Package 生成我們的Launcher2.apk即可。 如果覺得紅色XX很礙眼到 這裡 觀看解決方式,但是我試過這樣雖然沒了紅色XX,但編譯成apk檔時會有問題,所以在修改程式完成後,要編譯成apk檔前,先將上述網站所加入的lib從專案移除,再用Android Tools編譯apk即可。這也是我目前所使用的方式。

TI Pandaboaed Android 永不需解鎖

      一般在手機上我們可能需要鎖住螢幕來避免誤撥手機,但如果我們是將Android當作系統電 腦,如監控,遊戲機台等,我們就不需要鎖住螢幕了,另外休眠也可以一並解除。 作法如下: 1.解除休眠     打開   frameworks/base/packages/SettingsProvider/res/values/defaults.xml     找到    60000     將60000改為-1,這樣就不會休眠了。 2.永不鎖螢幕    打開        /frameworks/base/policy/src/com/android/internal/policy/impl /KeyguardViewMediator.java    找到     private boolean mExternallyEnabled = true;    將 true 改為 false 即可 以上作完後重新編譯即可

TI Pandabaord Android 開機SD之建立

        在使用Pandaboard時由於文件只提供RS232敲入命令及參數的方式開機,使得可用性不高, 再則Pandaboard並未提供flash所以不能刷入系統,官方文件最後的eMMC製作方式也是行不通, 再來還有網友提供boot.script的方式,測試過還是行不通,呵呵,有點窮途末路的感覺。只好由 source code來下手了,作法如下: 繼續閱讀,請輸入密碼... 再重新編譯後,即可使用SD卡開機,完全脫離RS232囉

TI Pandaboard Android 螢幕解析度設定

        由於 pandaboard 的預設螢幕輸出是hdmi且resolution是1920 x 1080,這樣在開發遊戲時可能會因為螢幕解析度太高而導致FPS偏低。所以我們必須改變螢幕解析度。          這在pandaboard的官方網站文件上是說可以在bootargs上加上參數即可改變,但似乎沒有效果,所以只好由source code下手囉,方式如下: 繼續閱讀,請輸入密碼...

Android開發時突然無法編譯

圖片
今天發生一個詭異事件,就是在開啟eclipse後,有關android的所有檔案皆無法編譯,專案前面一個紅叉叉! 檢查了所有設定,甚至android sdk重抓,eclipse重灌,android adt重抓,也就是整個android編譯環境重新設定一便,還是無解,好!至少確定不是設定的問題(還是我刪了啥檔案造成的)。 將錯誤訊息"Error generating final archive: Debug Certificate expired on xxxx/xx/xx xx:xx:xx" google一下,終於找到兇手拉XD 原 來,android要求所以程式必須有簽名,否則不能安裝該程式,所以在我們開發時adt會使debug keystore,這點你可以由eclipse的preference->android->build中的default debug keystore看到,這個key的有效期限是一年,就是它到期拉,吼~~~~ 好啦~開啟檔案總管,將它刪除吧,系統又會再給你一個新的debug keystore囉,不過一年後記得再刪除他一次,厚!有夠麻煩的啦~

替換android開機圖示,以pandaboard為例

此例子是以pandaboard為例,一般手機可能要root且開機是跑android原生方式才可以,作法是將 system/framework/framework-res.apk 用rar打開,要改的圖片放在assets/images裡面,對了就是 android-logo-mask.png及android-logo-shine.png這兩個檔,將他替換掉就可以,記得長寬要2的冪次方。 android-logo-mask.png及android-logo-shine.png的功用是 android-logo-mask.png前景圖示 android-logo-shine.png背景圖示 android開機時運用程式的方式將android-logo-shine.png光亮的部分在android-logo-mask.png下面跑 而android-logo-mask.png圖中的android是簍空透明的,所以會有閃亮的效果,如我們不需要這樣的效果,可以將android-logo-shine.png作成全透明。 但記住android-logo-shine.png要有android-logo-mask.png的兩倍寬度,如android-logo-mask.png是512,那麼android-logo-shine.png就要有1024這樣才可以。 如果功力行的話可以改寫frameworks/base/cmds/bootanimation/BootAnimation.cpp,不過那程式就需要重新編譯了,那又是另一個課題了。

跨平台遊戲引擎Libgdx心得(一) 環境建立

圖片
Libgdx是一個開源的的遊戲引擎, 可到 官方網址 下載,詳細介紹可到此 Libgdx Game 觀看,Libgdx的強項是跨平台,也就是開發者可以不必執行Android那運作緩慢的模擬器,直接可跑windows程式來debug程式是否執行無誤,不過還是要遵守遊戲規則,啥遊戲規則!?請看如下介紹。 不囉唆,底下就開始介紹如何建立開發環境        Libgdx是一個開源的的遊戲引擎, 可到 官方網址 下載,詳細介紹可到此 Libgdx Game 觀看,Libgdx的強項是跨平台,也就是開發者可以不必執行Android那運作緩慢的模擬器,直接可跑windows程式來debug程式是否執行無誤,不過還是要遵守遊戲規則,啥遊戲規則!?請看如下介紹。        不囉唆,底下就開始介紹如何建立開發環境,首先要有Eclipse android開發環境,這是開發android程式人員都會有的,這裏不多作介紹,直接說明Libgdx環境建立。 1.下載最新 Libgdx  解壓縮後得到下列檔案。           2.建立一般java專案,也就是Desktop程式,在pc上跑的,這樣我們將來驗證程式時可以不需開啟模擬器     這裏專案名稱假設是TestLibgdx。 3.Desktop專案建立好了之後在專案底下建立libs資料夾並將剛剛解壓縮的gdx-backend-jogl-natives.jar、gdx.backend-jogl-sources.jar、    gdx-backend-jogl.jar、gdx-natives.jar、gdx-sources.jar、gdx.jar等複製到這個資料夾裡面。 4.開啟Project->Properties->Java Build Path->Libraries->Add JARs,選擇專案本身底下的libs資料夾中的下列檔案     gdx-backend-jogl-natives.jar     gdx-backend-jogl.jar     gdx-natives.jar     gdx.jar     加入後,按下gdx-backend-jogl.jar前方的箭頭,顯示出子項,     選擇Source attachment-&g

讓pandaboard以原始1比1顯示full HD

pandaboard 開機後會以較大的圖示顯現,原因是由於pandaboard預設是1920x1080的解析度,可能是怕顯示出的圖示太小,所以就將螢幕密度設為240 了,要修改他我們可以到 system/build.prop這個文件中找到ro.sf.lcd_density=240,將它改成android原始密度160即可。 這個數值有以看出來,數字小,顯示的icon就越小,160是基準點,也可以看成 大於160 放大, 小於160 縮小。試試看囉

Android的實際解析度在Game上的現象

      在pandaboard上的基本設定dp(dip)是預設為240,而在android要讓顯示幕1:1輸出時是以160 dp為基準,所以在pandaboard上的圖形載入後是為1.5倍的被放大(240/160=1.5)。       所以如果我們希望圖片能1:1的被呈現,則須將system/bulid.prop文件中ro.sf.lcd_density改為160如此圖片才會是1:1的載入而不會被放大。

ubuntu10.04以後java改安裝java-6-sun

由於ORACLE收購sun所以ubuntu java 變成openjdk,如想安裝原來的java-6-sun可以依下列步驟 先要加入 repository add-apt-repository "deb http://archive.canonical.com/lucid partner" (如果顯示add-apt-repository未安裝,請執行sudo apt-get install python-software-properties 安裝) 接下來開始安裝jdk apt-get update apt-get install sun-java6-jdk sun-java6-plugin 安裝完成後,鍵入 update-java-alternatives -s java-6-sun 如此就換回sun-jdk了

Android模擬器無法上網的問題

如果遇到模擬器無法上網時,可能是DNS跑掉了,如下解決 使用android-sdk中所附加的工具 adb 開啟終端機,輸入 adb shall    <--進入shall環境 getprop      <--查看屬性 當中你會看到 [net.dns1]: [192.168.2.1]   <--這就是DNS設定 使用 setprop net.dns1 192.168.2.1   <--改成中華電信 DNS 或 setprop net.dns1 8.8.8.8 <--google DNS exit

TI Pandaboard Android 核心取得及編譯

Pandaboard 核心編譯完全參考 Pandaboard的網站文件,請到 這裡 觀看,原則上只要依照網頁上的步驟 即可完成,但有幾個必須注意的地方。 以下是在ubuntu10.04(32bit)環境下編譯完成。 一開始會先要求安裝下列編譯工具 sudo apt-get install git-core flex bison gperf libesd0-dev libwxgtk2.6-dev zlib1g-dev build-essential libstdc++6 tofrodos sudo apt-get install x-dev sudo apt-get install libx11-dev sudo apt-get install libncurses5-dev sudo apt-get install sun-java6-jdk 如果你的OS是64位元需安裝 sudo apt-get install g++-multilib 如果你的ubuntu是8.10,請安裝 sudo apt-get install lib32readline5-dev” 另外,筆者在網路上查詢到的Android核心編譯條件須包含下列幾項工具,如不放心請一一檢查是否都有安裝 以免編譯失敗 sudo apt-get install build-essential sudo apt-get install make sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install libc6-dev sudo apt-get install flex sudo apt-get install bison sudo apt-get install patch sudo apt-get install texinfo sudo apt-get install libncurses-dev sudo apt-get install git-core gnupg  //(gnupg 系統可能已自帶 ) sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-es

TI pandaboard android驅動

安裝好pandaboard的Android OS到SD卡開機完成後,以為就像Android手機一般可以連上PC讓eclipse可以在上面開發debug程式,但好像不是那回事,因為驅動一直裝不起來,看看panda的說明是用google原廠的usb驅動即可,但還是無法驅動。翻遍文章終於找到方法了,如下: 1.下載https://dl-ssl.google.com/android/repository/usb_driver_r03-windows.zip解壓縮後放置在     你指定的資料夾(i.e c:\android_sdk\usb_driver ) 2.打開android_winusb.inf檔案並在[Google.NTx86] 這個section 中加入下列項目 ; ;OMAP-3/4 %SingleAdbInterface% = USB_Install, USB\VID_0451&PID_D101   %CompositeAdbInterface% = USB_Install, USB\VID_0451&PID_D102&MI_01 %CompositeAdbInterface% = USB_Install, USB\VID_0451&PID_D106&MI_02 %CompositeAdbInterface% = USB_Install, USB\VID_0451&PID_D107&MI_03 %SingleAdbInterface% = USB_Install, USB\VID_0451&PID_FFFFE %CompositeAdbInterface% = USB_Install, USB\VID_0451&PID_FFFE&MI_01 3.打開終端機執行     echo 0x0451 > "%USERPROFILE%\.android\adb_usb.ini"     <--  將0x0451加到檔案內容 4.boot 你的panda android後,接上 micro-B USB cable 到PC,此時就可以安裝驅動程式了。