跳到主要內容

發表文章

目前顯示的是 2013的文章

看著這些照片,好懷念以前的日子(詐騙程式碼全攻略)

大家好,我是奶綠茶 等了好久,我終於收到傳說中的詐騙簡訊(呼,趕上流行了) 我就在想他用什麼方法來讓我中毒 身為程式人員當然要來了解對方的手法(老師有練過的,小朋友不要亂點) 首先,他是針對 Android 的使用者 所以你用 PC,Mac,iOS 打上那個網址 都會被轉到一個無人的無名小站 使用 Android 輸入, 就下載一個為 pic.apk 的安裝程式 下載完後,千萬不要按安裝,不然就中獎了 避免這樣的情形,記得手機裡的" 不明的來源 "一定要關掉 接著我們來看看寫了些什麼 1. 他的 package 取成 com.google.android.gmss 讓你以為是正港 Google 的程式 2. 要了很多權限, 像是直接打電話 3. 他會攔截你的個人資訊,訊息,電話 然後背後送到這個網站:appvip.istmein.de 4. 他很耗電 為何會產生小額付費款項 原因如下 該軟體先取得你的手機號碼 再傳送簡訊 appvip.istmein.de/img.php 至你的電話 然後程式碼會攔截簡訊認證碼 再把認證的資訊送回他們的主機 好了,現在你的手機已經可以被別人小額付費 避免這樣的問題,記得 來路不明的程式不要安裝 手機裡的" 不明的來源 "一定要關掉 祝大家學習愉快。 小弟把他的程式碼取出來 對學習Android是有幫助的,需要的朋友可以到這兒下載 https://app.box.com/s/p2iu6n06skq46nkga9b4 轉載請註明出處

Android 好用的桌機訊息提示小工具Desktop Notifications

因為工作的關系,大部份時間都在電腦前 但有時會沒注意到手機的訊息 這時可透過 Desktop Notifications 這個 App 當手機有任何的訊息時,桌機也會跳出一個提醒。 安裝完成後, 需要先啟動 Accessibility 完成後,安裝 Chrome 外掛,並填上手機上的 Code, 讓二者連接 App下載: https://play.google.com/store/apps/details?id=org.hcilab.projects.notification PC/Mac:Chrome外掛 https://chrome.google.com/webstore/detail/android-desktop-notificat/giicnncicnopjohcpamieklkiacdoeni

AdobeAIR Android In App Purchase

大家好,我是奶綠茶 今天來研究一下如何使用 Adobe AIR 在 Android 使用 In App Purchase, 也就是內購應用(好難翻譯,官方翻譯為:結帳服務) 奶綠茶我使用的這位作者提供的 Native Extensions https://github.com/pozirk/AndroidInAppPurchase 首先還是要了解一下 Android 的內購流程 先 K 一下官方的文章吧 http://developer.android.com/google/play/billing/index.html 流程如下 1. 成為 Android 開發者 2. 新增 AIR 的應用程式, 並在 manifestAdditions 增加內構權限 3. 編譯出 apk 檔, 並上傳到 Developer Console 成功的話,就可以看到"應用程式內產品"可以新增項目 4.新增內構的項目,有三種, 這部份就自己看一下官方文件吧 5.選擇"服務和API",找到你的 Base64 編碼 6.回到 Adobe AIR, 就可以開始寫程式了 測試的結果 不過使用 AIR NativeExtensions 在內購時,有一個問題要注意 無法付費完成後,馬上使用消耗性物件 比如說遊戲的金幣或是藥水之類的 這是因為 AIR NativeExtensions 無法得知 Android Activity 裡的 onActivityResult 事件 要改也是可以,但工程有點大 所以目前只能用在永久性商品較適合,像是升級成 Pro 之類的。 轉載請註明出處, 祝大家學習愉快

Adobe Flash CC

大家好,我是奶綠茶 最近 Adobe 推出新的雲端服務,把所有的產品線都放上去 今天就來介紹 Adobe Flash CC 在 UI 上新增了暗色系, 也可以換回本來的亮色系。 移除了 AS2 的功能 只支援64位元 啟動,超快的啦 文字的部份只保留原本的動態文字 新版的 Extension Manager 只支援 zxp 格式 這裡有個麻煩之處,舊版的副檔名為 mxp,在新版本裡不能直接安裝 所以需要先找到 Extension Manager CS6 版本,將 mxp 轉成 zxp 格式 這樣 CC 才支援。 轉載請註明出處

Flash AS2 素材Banner程式小幫手

大家好,我是奶綠茶 台灣各家入口網站大多都還只支援 FlashAS2 的素材 在製作時, 會在最上方的圖層上蓋了個透明的 Button 元件 此時下方的其他元素滑鼠事件都會失效,這時可以透過奶綠老師提供的方法 讓物件擁有onRollOver,onRollOut事件 原理:改用 onEnterFrame 不斷的 hitTest 來判斷 圖層:milkmidi_as,筆者的語法,固定加在最上一個圖層即可 // milkidi MovieClip protoypte extends MovieClip.prototype.bannerMode = function(over:Function , out:Function ):Void{ trace("milkmidi bannerMode: "+this); var isOver:Boolean = false; this.onEnterFrame = function ():Void { if( this.hitTest( _root._xmouse, _root._ymouse,false )){ if( !isOver ){ over.apply( this ); isOver = true; } }else{ if( isOver ){ isOver = false; out.apply( this ); } } } } MovieClip.prototype.play2 = function(pFrame:Number , pSpeedFactor:Number, pCallBack:Function):Void{ var _frame :Number = pFrame || this._totalframes ; if (this._currentframe == _frame) { if(pCallBack != undefined) pCallBack.call(_clip); return; } var _emptyMC_ :MovieClip = null; if (this["_emptyMC_"

FlashDevelop Error: Java heap space

在使用 FlashDevelop 編譯時出現了 Error: Java heap space 解法: 開啟 {FlexSDK_Root}\bin\jvm.config 把本來的 java.args=-Xmx384m -Dsun.io.useCanonCaches=false 改成 java.args=-Xmx1024m -Dsun.io.useCanonCaches=false 存檔,重新啟動 FlashDevelop 原文出處: http://www.flashdevelop.org/community/viewtopic.php?f=13&t=6006

flashdevelop unable to start java.exe

最近在使用FlashDevelop發生了這樣的問題 解法: 請安裝 JDK6 , 不要裝 JDK7 請下載 32 元位的 JDK, 不要裝 64 位元的 筆者的預設路徑為: C:\Program Files\Java\jre6 找到 FlexSDK 的目錄下的 bin 資料夾 開啟 jvm.config 本來的 java.args= 換成 java.home=C:\Program Files\Java\jre6 存檔,重啟 FlashDevelop 完工 轉載請註明出處

Android Custom Dialog

大家好,我是奶綠茶 這一篇來分享如何客製化 ProgressDialog 及 AlertDialog 在 github 官方的 Android App 裡,就有客製化 有興趣的朋友可以直接取得原始碼 https://github.com/github/android Github ProgressDialog 加入自定的圖示 dialog.setIndeterminateDrawable(context.getResources() .getDrawable(R.drawable.spinner)); 接著在 spinner.xml 就可以使用 rotate 來指定要旋轉的圖示 接著你還可以更改位置 @Override public void show() { super.show(); final Window window = getWindow(); window.getDecorView().setBackgroundDrawable( new ColorDrawable( 0x88ff0000 ) ); window.setGravity(Gravity.BOTTOM); WindowManager.LayoutParams params = window.getAttributes(); params.width = WindowManager.LayoutParams.MATCH_PARENT; params.height = WindowManager.LayoutParams.WRAP_CONTENT; window.setAttributes( params ); } 拿掉黑底, 在 Style 裡更改 <item name="android:backgroundDimEnabled">false</item> 預設的 AlertDialog 自定 AlertDialog 如果要去更改預設的 AlertDialog 樣式相當的麻煩 所以在這我就是自定一個 layout, 然後丟到 Dialog 裡最呈現 這兒有點小地方要注意 Android 3.x 前的版本,確定在左邊 3.x 後的版本,確定在右邊 所以在製作的時候要多這個判斷 轉載請註明出處

AIR on Mobile 支援 iPhone5 解悉度

AIR發佈到 iPhone5上,因為解悉度的關系,上下會留黑底 此時需要放一張名為 Default-568h@2x.png, 大小為 640x1136(iPhone5解悉度) 發佈後就會是滿版畫面了 參考文章: http://help.adobe.com/en_US/air/build/WS901d38e593cd1bac1e63e3d129907d2886-8000.html#WS901d38e593cd1bac58d08f9112e26606ea8-8000

Java Random Enum

亂數取得 Enum 裡的任意值 public static > T randomEnum(Class clazz){ Random random = new Random(); int x = random.nextInt(clazz.getEnumConstants().length); return clazz.getEnumConstants()[x]; } 參考文章: http://stackoverflow.com/questions/1972392/java-pick-a-random-value-from-an-enum

2013新書 設計職人必修:用 Flash 輕鬆打造 iPhone / Android 手機 App

呼,小弟的第二本 Flash 書 設計職人必修:用 Flash 輕鬆打造 iPhone / Android 手機 App 教你使用 Flash 來開發 iPhone / Android 的應用程式 範例搶先看:可以下載 Android / iOS 的完成檔 http://milkmidi.com/2013book/ 博客來書籍館的介紹: http://www.books.com.tw/exep/prod/lookinside.php?item=0010579967 筆者會將發現的錯誤記錄在這篇,如果大家有發現其他的問題也麻煩跟小弟說一下 感謝大家 問題回報:

設計職人必修, 用 Flash 輕鬆打造 iPhone, Android 手機 App

是的,各位奶粉們,小弟的第二本書 "設計職人必修, 用 Flash 輕鬆打造 iPhone, Android 手機 App" 即將上市啦, 滿滿的精采範例,  熱血的程度就像中日棒球之戰一樣, 搶購的熱潮就像反核活動一樣(明明就還沒上市)。 特別預留 2 本給奶粉們。 活動時間:現在開始到小弟拿到書為止。 活動玩法:以 "書名任意一詞" 來造句。 例:我愛 Flash(有出現 Flash)。 例:核四的問題是每位職人必修的課題(有出現 職人必修)。 小弟將選出最有創意的二名得主。(創意創意,千萬不要抄襲) 創意沒有好壞,一切以我自己來主觀判斷(對,我就是裁判) 抱歉補充一下:因為書的運費關系,限台灣地區的朋友參加 範例搶先看 http://milkmidi.com/2013Book/?s=blogger 想第一手拿到書的奶粉們,可以到筆者的粉絲團 https://www.facebook.com/milkmidifans

AIR on Android 的大Bug

大家好,我是奶綠茶 最近在熱血於 AIR 上的行動裝置開發 發現了一個大問題 在 Android 平台上, 如果你使用了 Stage3D, 小弟使用的是 Away3D 在 permission 加上這一段後 效能就會變的超差的 原因不明 可以下載筆者這個 Demo 加入這一段就可以知道了 http://milkmidi.blogspot.tw/2012/11/away3d-on-ipad-and-android.html 轉載請註明出處

2013 Adobe AIR Mobile 跨平台行動裝置開發班

2013 Adobe AIR Mobile 跨平台行動裝置開發班 是的,小弟精心準備的行動裝置課程 應用程式的戰場已從桌機漫延至行動裝置, 這中間經歷過 iOS 公開表示不會支援 Flash Player, 而 Adobe 也宣佈放棄 Android 平台的 Flash Player, 看似 Flash 的時代好像結束了, 其實不然, Flash 在桌機平台上還是保有優勢, 近來加入的硬體加速功能 ( Stage3D, StageVideo ), 及多執行序工作 ( Worker ) , 更讓 Flash 在效能上大大的提升, 更能讓創意的點子不在受限於以往的效能而無法完美的發揮。 Flash 在行動裝置上多了 Adobe AIR 的包裝, 把各平台上的向容性問題降到最低, 省去許多測試的時間, 開發上也是用熟悉的軟體與語言, 節省人力成本與工時, 面對這麼競爭的 App 市場, Flash 還是最佳的開發選擇。 本課程是針對智慧型手機 iPhone 和 Android 所量身定做的程式開發課程 使用 Adobe Flash 透過 AIR SDK, 編譯到各行動裝置平台。 學員需自備一隻行動裝置以方便開發測試, 二選一即可: 1. Android 請先確定您的裝置可以安裝 Adobe AIR https://play.google.com/store/apps/details?id=com.adobe.air 2. iOS iPhone4 或 iPad2 以上的裝置 需先成為 iOS 開發者, 並在 Mac 上取得 p12 憑證 可以參考梅干桑老師的教學, 如何製作 iOS 開發者憑證 http://www.minwt.com/ios/4411.html 課堂上請攜帶轉好的 p12 憑證。 如果你的機子 JB 過的話就不需要以上步驟 報名網址: http://www.flycan.com.tw/course/Adobe-AIR-Mobile.php

trace 進化版

大家好,我是奶綠茶 在開發任何程式語言時, 輸出的資訊是非常重要的 在 AS 裡使用 trace 來輸出 但預設就只會輸出文字 想要得到在那個類別下的函式執行的 可以透過以下的方法。 package { public function mTrace( ... args ):void { var e:Error = new Error(); var caller:String = "[" + e.getStackTrace().match( /[\w\/]*\(\)/g )[ 1 ] + "]"; trace( caller, args ); } } 接著就可以使用 mTrace("我是奶伯伯"); 就會得到像這樣的資訊 [CateringMain/init()] [object CateringMain] 轉載請註明出處

在 Facebook IFrames 使用 Google Analytics

大家好,我是奶綠茶 最近遇到一個問題 就是在 IE 下(是的,又是該死的IE) 包在 Facebook 裡的 iFrame 網頁. Google Analytics 會失效 解決方法可以參考以下網址 How to Track Facebook iFrames with Google Analytics http://www.savio.no/blogg/a/104/how-to-track-facebook-iframes-with-google-analytics

Texturepacker

大家好,我是奶綠茶 在開發 Starling 或是 Html5 動畫時, 會需要把所需要的元素合成一張圖片 同時輸出一份文件檔(通常是 XML) 如果要自己製作就太慘忍了,好再有好用的工具可以使用 http://www.texturepacker.com/ TexturePacker 最好用的是,可以把 swf 丟進軟體 就幫你產生一張大圖和文件 支援 Starling、Cocos2D 等軟體 有試用版可以下載, PC , Mac 皆有 大推