公告版位

新版部落格:blog.changyy.org

目前分類:Android (52)

瀏覽方式: 標題列表 簡短摘要


From: http://jmdns.sourceforge.net/

, ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

因為自己的手機沒廣播裝置無法直接接收無線電波來播放,所以一直很想寫網路廣播軟體程式,直到去年秋天找了一下如何在 Android 播放 mms 串流後,發現本身 Android 還是不太支援,就開始嘗試編 ffmpeg 處理 mms 播放,而編出 ffmpeg 後又停擺一陣子,實在是隔行如隔山 :P 所幸春節還有一點時間,卡在心中好一陣子的議題,終於趁著春節最後一天把該弄懂得都弄的差不多了,順手記一下,等下一個空閒時刻再包成一個完整一點的 android app 吧!

, , , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

 + 

雖然 Android framework 已經有不錯的函式庫,但總是會有不足之處。這時就先來玩玩 FFmpeg 吧,首先要做的事就是編譯出可以在 Android 執行的函式庫,網路上不少編譯 FFmpeg for Android(ARM) 的文章,最後我就在 Ubuntu 12.04 64Bit 上試編一下,並在 Mac OS 10.8 上把玩 Eclipse 囉

, , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

接近半年前幫公司上架一支 Android app ,結果兩個月前想要更新程式時,卻發現自己想也想不起來 keystore 的密碼 XD 當時起就一直抱著砍掉重練的精神,遲遲未更新程式,沒想到今天再次要更新程式時,竟然矇對 keystore 的密碼了!當下想到的第一件事就是更新密碼,把密碼改簡單一點 :P 此外,以前認為一支 Android app 就要獨立一個 keystore 來管理,反而造成管理上的困擾,因此查了一下果真還有可以合併 keystore 的方式 :-) 真是太讚啦

更改 keystore alias name:

, , , , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

android_canvas

一年前,我的好同事就一直在用 HTML5 Canvas 做出很多很讚的作品,但那時我的方向不一樣,一直沒有接觸。最近則開始想要在 android 畫畫圖,除了很底層的 OpenGL ES 外,就想到 Canvas 啦。

, , , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

以前常在操作 DBHelper 時,常常因為沒有把 mCursor.close() 而常常出現一些錯誤訊息,後來就很習慣每次取一個 mCursor 出來,用完後就執行 mCursor.close() 來當做完整的收尾,結果開始出現這種訊息並且完全不知道是自己哪一行程式出錯:

FATAL EXCEPTION: main

, ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

返家過節,家人分享了 android app 手電筒給我把玩,說真的偶爾還挺實用的,甚至一些 feature phone 都也有這種設計(基本上是真的裝了一個燈)。但我仔細看了一下該 app 的權限,卻開了一堆有的沒有的權限,假設把這個行為丟給國內知名防毒大廠的偵測系統進行偵測,那應該就會被判斷成病毒了。所以我就順手練習一下了 XD

而 android app 的概念則是使用相機的閃光燈,讓閃光燈的狀態停留在 FLASH_MODE_TORCH 時,就可以當做手電筒使用了。然而真正實作上的細節,則必須先開啟相機才能使用閃光燈,也就是用閃光燈之前必須開啟鏡頭並且也會開始把鏡頭收到的影像傳給系統了。簡言之,使用閃光燈其實會操到鏡頭跟系統資料,等同於有資料不停地從鏡頭收進來。

, ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

最近碰到一個 bug 卡關,那就是當我 new HttpGet("http://aaa_bbb.ccc.dddd") 出來,交由 HttpClient 執行時,卻會看到以下訊息:

java.lang.IllegalArgumentException: Host name may not be null

, , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

想必還滿常碰到一個 Activity 中,擺幾個 EditText 讓人輸入帳密來送出的表單吧!然而,當送出表單成功後,偶時會很偷懶直接把 mEditText.setText("Info") 且 mEditText.setEnable(false) 來處理,想說這樣又可以重複利用 XD 結果就會碰到開啟 Activity 後,自動 focus 在 EditText 並彈跳出 keyboard 的窘境了。如果動態進行 mEditText.setFocusable(false) 的方式,的確可以避開 focus 的問題,但很奇妙地再動態 mEditText.setFocusable(true) 時,卻會出錯而無法點選該欄位 Orz

最後,找到一些很折衷的辦法...那就是在 EditText 前,先讓某個處的 layout 可以被 focusable 就好 XD 這樣的解法真的是 It just works! 的狀態。

, ,

changyy 發表在 痞客邦 PIXNET 留言(1) 人氣()

如果 API 不是定義的很好,回應得資料格式不依,但至少有符合簡易的 XML 雛形,如:

<name>changyy</name>

, , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

之前研究 HTTP Post 的方法時,順手實作了支援 Cookie 等功能,久了之後就會想到如何監控上傳進度的部分,原理都很簡單,但要熟整各個 framework 才能方便進行。所幸網路上好心人士非常多,找到這篇 Android Multipart POST with Progress Bar 真的超佛心的,就順手修改一下一點架構。

實作概念:

, , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

file_upload

之前已寫過一篇 Android 開發筆記 - HTTP、HTTPS、GET、POST、Cookie 筆記,最近則需要用 POST 上傳檔案,就順手在記一下。首先需從 http://hc.apache.org/downloads.cgi 下載 HttpClient (4.2.1) 後,從裡頭取出 httpmime-4.2.1.jar 檔拖到 Package Explorer > Your Project > libs 後,在按右鍵 Build Path > Add to Build Path...,如此一來在 Android 裡就能使用 MultipartEntity 進行上傳檔案的行為。若不使用的話,大概就自行實作鄉對應的格式也行。

, , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

寫 Mobile app 有時需要存一些敏感的資訊,如果只是當做一個認證用途,大概就用 MD5 或 SHA1 來使用,但如果需要保留的,大概就需要能夠加密後又解密的,這時候就可以考慮拿一把 key 進行 AES Encryption/Decryption 動作。

簡易 SHA1:

, , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

網路服務常需要拿 IP 或 MAC Address 來做存取管控。筆記一下。

權限:

, , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

gallery_apps

雖然 Android 開發是用實機才是王道,但有時就是想偷懶看模擬器跑的如何,這時就仍需要模擬器的環境。如果要處理照片、影片的應用時,就需要匯入一些圖片影片來測試。一開始若直接用 adb shell 或 DDMS push 資料至模擬器時,會顯示 failed to copy: Read-only file system:

,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

ExportSignedApplicationPackage

嘗試將小試身手的程式上架看看,初步的心得,覺得 Android app 上架比 iOS app 還要快,大概資料填妥後,約兩小時內就可以在 Google Play 搜尋到了!

, , , ,

changyy 發表在 痞客邦 PIXNET 留言(1) 人氣()

一直以來都知道更新 UI 時,要使用 UI Thread 來進行,有幾種方式:

  • 使用 Handler.post
  • 使用 YourActivity.this.runOnUiThread
  • 使用 mListView.post 

然而今天練習時卻一直蹦出錯誤訊息:

, , , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

Android Developer Console

摸了 Android app 大概有快一年半吧,一直以來都沒接觸過 Google Play (Android Market) 這塊東西,如今有幸幫公司處理,就來筆記一下啦!購買開發者帳號需要一張有效的信用卡,並透過 Google Wallet 來使用。首先從 Android Developer 官網連入,從右上角選單可以看到 Google Play Developer Console ,點選後進行登入,如果還未註冊為 Android 開發者時,就會顯示註冊畫面,輸入完"開發人員名稱/公司名稱"、"電子郵件地址"、"網站網址"、"電話號碼" 後,就可以點選繼續進行。

, , , , , ,

changyy 發表在 痞客邦 PIXNET 留言(1) 人氣()

七月多推薦周邊親人買 Galaxy Nexus 來用,那時洽逢 SAMSUNG 與 Apple 智慧財產官司的關係,花了好大一把功夫才買到一台(空機價約13.5k附近),雖然不是最便宜的(美國官網公訂價$399美金,台灣有機會可以找到 13k 一台),但看在缺貨情況已經很滿意了。使用上除了拍照有聲音外,還都不錯用,不致於想要 root 它啦,不過,讓我想更新它的主因是...直到 2012-08-11 時,尚未接收到 Android 4.1 OTA 更新通知,查了一下原來這隻手機似乎是港台機?代號是 yakjuzs 並且屬於 SAMSUNG 系列的?也就是系統更新是 SAMSUNG 在維護的,與其等到 SAMSUNG  推出 Android 4.1 更新檔,還不如自己更新吧 :P 於是就下海刷一下吧!

雖然過去工作常編 AOSP 甚至把一些手機 root 研究,但本身使用 Android 手機時,並不太想要 root 或刷機的 :P 例如刷機刷用的檔案有沒被加料等等。故這次更新我主要採用 Google 官方提供的 Factory Images for Nexus Devices 來源,這也是我專挑 Google Nexus 原生手機的主因之一,可以方便地處理一些事務。

, , , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

最近的案子很特別,除了一堆 Activity 外,每一個 Activity 裡頭又有一堆 Button/ImageButton 要處理,如果是依照一般教學文:

Button b = null;

, ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()

1 23