發表文章

目前顯示的是 3月, 2014的文章

android 的平板終於有可以跟ipad匹敵的產品了

圖片
今天3/27,到Nova走一趟,發現這新東西, 左邊是Samsung GALAXY Note Pro 12.2... 上圖右邊是ASUS 10.1平板 質感相差好多,螢幕與效能Galaxy note 好多了, 號稱4+4核心,聽起來就很威~ 相比之下Asus 的10.1 Tablet看起來的感覺就....質感差了一截.. 雖然價格很便宜,但就是一般廉價品的感覺的平板, 而老闆也故意把他們放在一起, 這樣不就是會重挫asus平板銷售量嗎?還是說店家想做負面比較, 反正能賺錢就好.... 看了note pro 12.2誰想買隔壁那個...  在現場玩了半小時note 12.2,與10.1, 操作手感很好, Super AMOLED面板好漂亮鮮豔, 讓我有感覺android 平板中,終於有可以跟ipad匹敵的產品了. 因我是寫android app,感覺之前看到的andorid平板質感普遍都較差... 有時就算便宜我也不想買... 但Galaxy note12.2讓我看了後,雖然貴~但感覺好棒很想買一台.. 12.1重量也很輕, 尤其12.1吋螢幕跟Notebook差不多大了... 隨身簡報,塗鴉跟 上網很方便,對眼睛很舒服.拿了它也感覺比較有面子. (相比拿ipad,有時拿台廠平板出去就有讓其他人感覺窮鬼的感覺) 另 Galaxy note 10.1(2014年版)也不錯....... 玩了一下,隨身攜帶的話10.1 大小剛剛好.

Intel Pentium Processor J2900 (2M Cache, up to 2.67 GHz)

圖片
intel出了平價四核心了,比起i5-4440 (約新台幣5999來說,便宜一半) 目前已經可以看到有機種出現了 Intel® Pentium® Processor J2900 (2M Cache, up to 2.67 GHz) 狀態 Launched 推出日期 Q4'13 處理器編號 J2900 核心數量 4 執行緒數量 4 時脈速度 2.41 GHz 最大超頻 2.66 GHz 快取記憶體 2 MB 提供嵌入式選項 No 光刻 22 nm 最大散熱功率 10 W 建議客戶價格 TRAY: $94.00 (約新台幣2820元) Graphics Specifications 處理器繪圖 ‡ Intel® HD Graphics 繪圖基礎頻率 688 MHz 繪圖最大動態頻率 896 MHz Intel® 高速影像轉檔同步技術 Yes InTru™ 3D 技術 No Intel® Insider™ No Intel® 彈性顯示介面 No 支援的顯示器數量 ‡ 2 連celeron 都出四核心了:Intel Celeron J1900四核心(2.0G) 未來雙核心可能都要變低價品了,四核心變主流了 但很可惜 ,他是 FCBGA1170 Socket,不是Socket 1150 ot 1155. 通常是連著主機板一起,不能升級.

android Logcat 開啟後, eclipse HEAP usage使用爆增問題

圖片
eclipse 也是java寫的,故有HEAP使用效率的問題, 若是超過HEAP Size,eclipse 使用效率會大減. 如果開啟update heap button,eclipse會自動update heap size. 會執行Recycle. 釋放HEAP. 如果沒開,我看到Eclipse heap size一直不斷增加,不會減少,除非你按了gc(垃圾桶圖示).... 但這樣其實不好,對32bit os來說,可能會導致記憶體不足. 故開啟heap update這按鈕是很重要的事.

Java 8出了..

圖片
Java 8出了,好快.... 目前eclipse 中compile還在使用1.6(Java 6)來Compile. 不太敢用1.7(JAVA 7),結果現在JAVA 8出了... 注意: Using JAVA 7(1.7) requires compiling with Android 4.4 (KitKat) JAVA 8 Downlad

The Google Play services resources were not found error.

圖片
今天遇到了The Google Play services resources were not found. 但專案裡面都有include... 搞不懂.. java.lang.IllegalStateException: A required meta-data tag in your app's AndroidManifest.xml does not exist.  You must have the following declaration within the element:     solution: If you receive this message you have a problem with the Google Services jar imported in project. a) Cleaning and rebuilding might not help. If on Properties(click right-Properties-Android Dependencies list) the google services jar does not show, then the error is justified. b) To fix this, Import-From existing sources-go to  source of SDK,  C:\adt-bundle\sdk\extras\google\ google_play_services_froyo \libproject\google-play-services_lib\libs and the in your project Add this jar to your path. Clean and rebuild, refresh and it should work.  故注意import library時:   C:\android-sdk\extras\google\ play_service目錄 \libproject\google-play-services_lib\libs google_play_services_froyo : 給舊版使用的 (要選擇這個) google_play_serv

admob雙廣告合法嗎?

圖片
這幾天下載了一個app, 非常驚訝, 除了該app直接開webview就連到youtube,非常簡陋外, 還放了兩個 abmob框架, 只是這樣用是合法的嗎? (當然我不會去檢舉, 只是有此疑問....)

android 4.4kitkat 當執行到螢幕截圖功能時,app會當掉問題.

注意目前andorid 4.4 kitkat 當執行截圖時save到sd卡上: sendBroadcast ( new Intent ( Intent . ACTION_MEDIA_MOUNTED , Uri . parse ( "file://" + Environment . getExternalStorageDirectory ()))); 會發生此問題:~~app會當掉 java.lang.RuntimeException: Unable to start activity ComponentInfo{GalleryActivity}: java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.MEDIA_MOUNTED from pid=16890, uid=10218  原因為: Android 4.4的sdcard根目錄的讀寫權限 Intent . ACTION_MEDIA_MOUNTED 有更改. 所以你一截圖時save到sd卡上時,會發生更新圖庫的要求但因無權限所以app當掉. (但圖片儲存到sd卡上是成功的,. ) 故之前版本的android 可以run,但到4.4後就不行, 目前很多手機都逐漸更新成andorid 4.4. 所以不能因為說android 4.4  很少人用就不更新. solution 1: 辦斷目前sdk版本並跳過此會當掉的code if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT)  {         // only for KITKAT and newer versions } else {         sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,         Uri.parse("file://"  + Environment.getExternalStorageDirectory()))); } solutio

支持app開發者的原動力.

圖片
我相信 很多人都很難體會 當一個人很想做一件事,但眾人卻群起反對時那種心情. 首先,當我想往 Android app領域發展, 第一個聽到的是被拒絕的聲音:. 跟朋友說:朋友卻哈哈大笑,暗自揶揄:你怎麼會成功.... 或是 JAVA 比 C++簡單多了...這類的話 周圍的人聽到我在寫 app,不是冷嘲熱諷,就是根本不想安裝來支持一下. 辛苦寫app,卻得不到一點支持...(很難形容的苦) 挫折感超重... 最近, admob 收入,還是很少 ,看這收入,是沒辦法全職寫很多想做的app. 創業更是不可能 . 所以只能放著夢想無法實現,有空才能寫一些自己想做的app. 看這數字,每天 才0.75美元不到,離要靠admob吃飯還很遠, 但寫APP付出的代價是很累的,要規畫程式架構,寫程式,自己測試DEBUG,美工....上架. Google 給的回報只是每天新台幣30元不到. 但這些並沒有傷害我的決心. 我想夢想,就是做自己想做的事一樣... 聽說別人說過:人生不過就是先被別人笑笑, 然後在笑笑別人.... 大家都這樣,算了啦~~ 也別計較太多.. 但有一點卻是讓我很高興,唯一高興的事: 就是 我有一個app有23000多人安裝了. 每次想到有23000人支持,就覺得吃點苦算啥.... 感覺到這就是支持app開發者的原動力. ps:目前剛換工作,找到一個專職android app的工作, 平常可以寫公司交代的app,算是穩定了.

androdi Kitkat ...結局很驚喜

圖片

一個好的app設計-考慮耗電量

圖片
當設計app的人沒有電腦資源使用率的概念, 就會造成上面的結果, 耗電量大增,甚至比螢幕還耗電.. 有時設計一個app還需要考慮耗電性. 你不能產生一個thread,就一直在背景running, checking, updating... 像 Line也是, 但 Line沒這app嚴重, 當User離開這應用程式,app卻沒有釋放資源, 例如onPause時就要開始有心理準備,不能假設user只是被其他訊息擋住,馬上就會回來, 而onStop時要開始終結與釋放資源,該stop就stop,close, 設null. onDestory時要徹底release乾淨,不要太依靠java gc. 有時檢查網路上的資料,頻率太快,都會造成手機耗電量大增, 但有些app的設計者,卻只管要達到最佳效果, 每 10sec 或每分鐘就檢查一次. 效果是達到了,但也讓手機耗電量大增 user也很難發現. 可能等到手機待機時間大幅縮短時,才會去檢查是哪個APP是耗電元兇. 當發現是這個APP造成時,就一怒之下把這APP刪了,永不安裝... 在google map API也有類似設定, 你如果把檢查回報的時間設太短ex: 1ms, 或是距離 1M , 就回報更新座標. 甚至有些設定0sec or 0m.變成一有更新就回報,馬上就會把手機珍貴的電力耗盡. 這就是爛設計. admob也是有相同的設定,請大家小心設定頻率, 有些設計師為了求好心切,努力send request,幾乎每換個畫面就send 一次. 當下載廣告時,3g or wifi的耗電量會大增,長期下來, 很可能造成未來user只要看到app有廣告,就把這app刪了.... 有聽人說過為了增加admob收入,廣告能放多少就多少...我就持相反看法. 反而廣告出現的越少,user好感度會大增 . 例如蘋果日報APP,就是廣告出現頻率太高,有時還強迫User觀看. 甚至把廣告混入新聞中,這就不是好app,反而會造成user反感. 所以就有公式產生: user對APP的好感度=(內容+實用度+UX好壞) / ((1+價格) * 廣告出現頻率*耗電量) *100% 有時下載率高,代表其內容與實用度不錯, 但會被高耗電量或其他因素害慘.就不是一個好的APP.

沒清電腦的後果,再好的電腦都會越來越慢...原因為WINDOWS的錯誤報告竟然多達4.2GB

圖片
  最近發現電腦越跑越慢,於是檢查電腦有多少垃圾, 結果發現"WINDOWS的錯誤報告"~~ 竟然多達 ~4.2GB. ...也太佔空間了吧.....(幾天前才清過) what is the Root Cause....? 想辦法解決中...

android app開發設備之開發手機推薦篇-LG G2

圖片
聽說LG 將於2014/3/15 開放台灣 LG G2 手機更新至 Android 4.4 KitKat. YA!!!!終於等到了~~~ 升級KitKat後,android 4.4號稱記憶體使用上會最佳化,據說只要512MB RAM就可以跑. LG也宣布說G2的音樂播放、網頁瀏覽和程式執行的速度也將最佳化, 並支援省電定位模式, Google Cloud Printer(這個沒用過...文件列印功能), 且會更新 G2的敲兩下螢幕的解鎖功能...(這敲兩下的功能實在很不靈敏...有時要多敲幾下才會反應) 就等 LG OTG upgrade開放囉..... 目前我就是用這台來開發 andorid app. 可以開DDMS, Logcat debug,不用root. 故推薦 LG G2 D802 16G 5.2吋四核心旗艦智慧手機~~~~~ 最後,有人可能會問說,現在模擬器已經可以測試google api,也有hax加速,就不用實機了吧... 但....雖然模擬器可以做debug, 仍有下列缺點: 1. 模擬器滑鼠操作仍不便,手感還是沒實機好.有時要測試畫面操作流暢度還是要有台實機較佳. 2. 很多程式模擬器跑很好,但實機就是會出現一些莫名其妙的問題,ex: OPEN GL ERROR OR ANR等. 3. 測試GOOGLE MAP需要GPS定位,總要出去外面走走吧. 總不能一直都是輸入模擬位置吧... 4. CAMERA一定要實機才能跑. 5. 想隨時測試玩一玩自己寫的APP, 難道要隨身帶台笨重的電腦?? 然後等3MIN才能開始????~~~不好吧~一台實機就搞定了 .... 所以,快買台好的測試機吧~~LG G2不錯,還有中華電信大省方案可折價, 若是不想綁約,也可以點這邊LG G2圖示 直接連到YAHOO以最優惠的價格來買...這有送側掀皮套+炫彩傳輸線+保貼 LG G2一訂要搭配原廠側掀皮套,一起買較划算: ~~~有好的設備才能寫出好的程式~ 推薦LG G2~~~

開發android 程式-之推薦硬體配備之硬碟篇

圖片
Seagate hdd是眾所皆知,便宜又大碗的硬碟. 跟WD跟hitachi硬碟比起來. WD: 綠標轉速不是7200rpm, 黑標與紅標又太貴了,c/p值不佳.(但如果你有閒錢的話,也可以買wd黑標,但同容量要多花2000, 2TB來比的話) Hitachi: 日立的雖然便宜,但硬碟讀取聲太大,不適合家裡房間使用.故不考慮. 1.同樣的價格,wd只能買到綠標,seagate可以買到7200rpm的. 所以, 同樣都是兩年保固,seagate要換貨很容易,到處都有看到換貨點. 其他兩家就不太方便. 故要開發android app或 framework 層,SDK,driver, 每天都要compile 一堆code,沒有安靜且7200rpm的硬碟是不行的. 2.容量方面: 3TB 的硬碟都有一個問題點,就是要支援UEFI,故舊電腦沒有UEFI就無法透過他開機, 故舊電腦確定是傳統BIOS就只好買 2TB的了. C/P值來說3TB較划算,但舊電腦就算了.... 另外3TB也建議要64bit os, 例如 win7 x64, winxp x64, 不建議用3TB. 如果你還在用32bit OS,可能要升級64Bit OS比較好. 因為目前android sdk都建議用64 bit ubuntu 來compile了, 而且RAM超過3.25G的話,32 bit os就無法最佳化效能. 所以還是建議直接換64 bit os, 例如win7 64bit. 對一般windows下的應用程式比較沒問題,32bit 應用程式一樣可安裝,64bit os 可裝32bit 應用程式,大部分都是相容的. (ps:但有一些舊設備, ex: 很早期的印表機,就沒有release 64 bit os driver,這時就會不能使用)

一個好的android app程式設計師之藝術

藝術, 藝術,異數,如果什麼都相同,那就是copy,不是藝術了. 所以,選擇不同也許也是一條路. 人從出生到死亡,都與藝術有密切關係. 幾點幾分出生,能不能挑個好時程. 是什麼星座? 早上起床也是一種藝術, 一早的穿著, 髮型.鞋子的選擇. 從容不迫的上班,不遲到,還能喝杯咖啡,吃完早餐. 遲到也是一種藝術,遲到得剛剛好,在3min公司容許值內,也不簡單. 富翁,也許是一個懂得賺錢的藝術的人. 乞丐,有時只是對該藝術不了解. 能看懂這藝術, 不管做任何事都能成功. android 程式設計師也是. 常看到從google play 下載的app,只是連接到youtube,或是web view連接到一個網頁,這樣就叫完成了一個app?品質粗躁... 難怪大家都說andorid app不如ios app. 一個好的android app程式設計師也是. 努力了解andorid app的設計藝術 ,UI/UX, java與android api 如何使用才會達到最好的效果 , 而不是只是copy-paste. 不斷地思考如何做到最好. 這都是藝術. 如果你要問我主修什麼? 我會說我主修藝術~android app的設計藝術.人生的藝術

Android 開發電腦之記憶體要多少才夠篇

圖片
撰寫app需要開啟eclipse,而eclipse也是java所寫,非常佔記憶體, 來算算 Windows本身服務等程式就需2GB才跑的順, 加上firefox 佔500MB(查資料用) Eclipse 會佔 500MB 再開個Android模擬器 1GB 加一加 4GB根本不夠。 至少要8GB, 若是預算夠,一次就直升16GB.也不錯 當然,要灌64bit OS,不然買那麼多也沒用,因為32 OS 只用的到前面3.25GB。 很多android developer在抱怨android 模擬器怎麼那麼慢,其實有時候是自己電腦的問題.... 

一個令人感動的影片-Google Fiber

圖片
Introducing Google Fiber: The Next Chapter of the Internet    這段影片我看了不下100遍, 每次看都都有不同的體會, 大家都有玩過數據機撥接的日子,那嘟嘟滴滴的聲音,讓人懷念學生時代那時 5min 1.7塊的時光. 那時信箱滿滿的垃圾信,都要手去一封一封的刪除.不像現在直接進GMAIL 垃圾信資料夾. 接下來是寬頻的時代,~hinet與seednet 的時代, seednet已不見了. 後來有了光纖10M, 20M, 到現在的100M. 時代在進步,周圍的人也在改變, 那些陪伴你一起成長的同事,同學,朋友... 一直在改變.有多少人現在已失去聯絡. 過去的回憶,就像影片一樣, 不斷過去. 也許我們曾在某處跌倒,但往事已矣,過去的不值追憶. 現在一直在改變,讓我們向未來看... MOVE ON...  

Android HAX 硬體加速模擬器新增支援Google APIs

圖片
上周開始Android SDK更新了, 新增 Google APIs(x86 Image) 我電腦的CPU-Z: (8GB RAM) 優點如下: 1. 使用Intel VT-x可開啟 Android HAX 硬體加速模擬器 2. 有支援Google APIs版本的 模擬器才可用來測試 google map.(就是說可省一台實機了,對各種解析度的debug更方便了) 3. 有GOOGLE API支援的模擬器開機~只要 1/10的時間,之前是隨便都花10min.. 來測試速度: 選擇: error, 但很遺憾,OK鍵按不下去.......-_- Solution: 原來是eclipse還開著所導致,把eclipse關閉,從start menu中android sdk tool 開啟AVD Manager再建立即可. ---------------------- trouble 2: 開啟後出現: Starting emulator for AVD 'a1234A' PANIC: Could not open: a1234A solution: 有移動過 windows的user profile folder放置, 之前是C:\Users\我的使用者帳號 ,我有將位置移至不同的地方 . 故導致找不到AVD 所以無法開啟. 新增環境變數(Environment Variables). : ANDROID_SDK_HOME=你想放置avd的目錄. 重開機. ---- Trouble 3: 選擇Nexus 5 ,1920X1080P 的預設模擬器 ,需要 2048GB RAM 等了 5 MIN 還是黑畫面....沒出現ANDROID字樣... 故放棄. 改用預設的Google Nexus 1024 GB RAM,來測時間: 來算開啟模擬器秒數... 1:25秒 進入.超快...