2013年2月27日星期三

應用 Android NFC App

最近搞到了幾個 NFC Tag , 想說來看看 Google Play 上有沒有甚
麼有趣的軟體可以來應用一下。

其實原本是要玩 Sony Smart Tag 的,搞到了這幾個 NFC Tag 之後,
先試著把 Smart Tag 的 URL 寫進去,測試了一下,發現其實 Sony 的
Smart Tag App 功能實在有限...

先介紹幾個基本的 App :

NXP TagInfo - 讀取 NFC Tag 資訊
NXP TagWriter -寫入 NFC Tag 資料 , 包含 URL , Text , 聯絡人... 等等

NFC 雖然可以儲存資料在 Tag 中,但根據 Tag 的不同儲存容量也不一樣

如:
  台北捷運的單程票能儲存 64 bytes (實際可用約 46bytes)
  高雄捷運的單程票大約能儲存 5xx bytes (但是 write protected)

Sony 的 Smart Tag 其實也就只是把一個自訂的 URL 寫進 NFC Tag 中,
當讀取到該 URL 的時候,就會啟動 Smart Tag 的程式進行一些設定
(如:改變音量大小、亮度、啟動無線網路... 等等)

 底下介紹幾種不錯的工具,讓手邊的 NFC Tag 能充分利用

2012年11月23日星期五

Snoy Small App 開發入門

Sony Xperia 系列在 2012 年後的新機種陸續都加入了 Small App 的功能,
簡單來說就是 Sony 自己提供的一個簡單的 framework , 可以讓小視窗浮動
在畫面上( alwasy on top),感覺就像開啟一個新視窗。

比如說在逛 PTT 的時候有網站連結要連,可以用 Small WebView 來開啟:
這個功能其實蠻實用的,前幾個月換了 Xperia TX 後,就一直在關注這個東
西的發展。

自製 Small App :  Small MultiClip
PS : 上面連結文章中的下載位置是舊的囉,請參考新的下載位置 Small MultiClip
已於 Google Play 上架: MultiClipboard for SmallApp


2012年8月21日星期二

TF101 Unbrick 解磚

前幾天看到 CM10 有 for TF101 , 就很興奮的拿來刷...
結果不知道是不是 recovery 的問題,刷完後無法開機,接著再
restore 回之前備份的資料,復原完後居然卡在開機動畫....

接著在經過幾次的處理... 到最後變成只能開到 Recovery...
這... 算是半磚了吧XD ,而且還無法連上 ADB...

底下是經過四個小時爬 XDA 後得到的解磚方法。

撰寫日期: 2012/08/21


2012年8月13日星期一

TF101 Root 疑難雜症篇

會持續更新 root 後有回報的錯誤或者一些疑問,
請先在這邊找看看有沒有自己遇到的問題吧。

Update : 08.21

2012年7月19日星期四

Android ADSL 進行 PPPoE 撥號上網

相信很多人都有遇到一個情況:

有 android 智慧型手機,但是沒有行動網路吃到飽,住的地方又
不一定有免費 wifi 可以連...

而種花電信光世代 ADSL 雖然有提供 Wifi AP , 但是連上後卻還要
進行 PPPoE 撥號上網, Android 並沒辦法進行撥號這個動作。

於是會有不少然人會再花錢買一台 Wifi AP 接上 ADSL 讓 Android 手機
可以上網。

如果不想花另外的錢購買一台 Wifi AP , 其實還是有其他解決方案
例如:
  1. Connectify - 需要網卡支援 Win7 Only
  2. ADSL 硬撥 - 連入 ADSL 小黑盒修改成 DHCP 以及硬體撥號 , 需要些技術
  3. 利用 PPPoEW 軟體讓 Android 撥號 - 需要 root
都有各自的優缺點,這邊要介紹的是第三個方法:

2012年7月16日星期一

Android 程式以 root 身分執行

相信不少寫 Android App 的開發者一旦有機會,應該都會做 root
這個動作,root 後可以做很多很有趣的事情(無誤)

不過要怎麼樣撰寫一個需要 root 權限的程式可能就是比較少接觸
的部分了。

首先,通常會需要 root 權限的程式幾乎都是利用 shell 來執行一些
命令,所以基本上大多是會碰到 linux shell 的東西。

<<不想看廢話可以跳到最下面>>

例如:
RootExplorer - 利用 ls -l 取出資料分析再套上 UI
AdFree - 修改 hosts 檔案

2012年7月13日星期五

Android Decompile 實例 via smali

※此篇文章僅供學術交流,嚴禁轉載及引用或做其他用途※
※此處不提供任何付費軟體,如有興趣請支持正版※
※請遵循所有 Goolge 的規範以及協議※

這邊要介紹利用之前提到的 decompile 工具來實際
反編譯一個程式,並達到我們需要的目的。

要先準備的工具有:
1. Smali (也要有 baksmali)
2. Dex2Jar
3. JD-GUI
4. AndroidResEditor

前三個可以在之前的文章找到,第四個 Google 一下應該會有
或者到 Gphonefans 下載 (PS: 中級會員以上限定)
這個主要是做 signature 用的,所以也可以用 Android SDK
提供的工具來做簽章


當然不要忘記一定要有 Java 執行環境 (JRE or JDK)

另外,也有工具提供直接處理整個 apk 的: apktools , apktool 裡面包含有
smali  和 baksmali ,其實算是很齊全的工具,如果有要順便改 xml 的人可以
改用這個。 不過 apktool 沒有簽章的動作,所以包裝好的 apk 記得要做簽章 。

2012年7月12日星期四

Android OTA 後如何保留 root

不少人會有這種問題, root 後不能更新 ,
萬一能更新,在更新後不一定能夠保留 root 權限

而偏偏很多廠商 OTA 之後會把漏洞修掉,所以之前提到的
TF101 才需要用到 RootKeeper 來保留 root 權限。

重點就在這個 OTARootKeeper 是怎麼運作的,我從之前學長教的
Linux 「漏洞」(應該算是挖坑給 root 跳的動作吧XD )中想到的方法
PS : 這個漏洞是挖洞給懶人管理者跳,所以基本上並沒有甚麼威脅XD

隨後也去看了一下 RootKeeper 的 source code , 果然是用這種方式XD

2012年7月11日星期三

Decompile Android dex

我們都知道 Android 是用 Java 撰寫的,也知道  Java 編譯出來的 .class 檔
其實是給 JVM 看的 Byte code ,其實 Android 所編譯出來的 class 檔會再
經過編譯轉換成給 Dalvik VM 看的 byte code,也就是我們會在 apk 檔案中
看到的 classes.dex 檔案。

classes.dex 檔案裏面包含了所有的 class , 我們可以透過幾個工具來進行
Decompile 的動作:

2012年7月4日星期三

Transformer TF101 root


在網路上可以看到不少相關教學,但實際上真的適合、能用的並不多,
這邊就提供一個 80% 可以成功的方式,只要和我測試時麼環境相同,就
應該沒什麼問題。

一般網路上找資料最麻煩的就是不知道是多久之前的文章,有的網誌又偏偏
只會寫時間,沒有寫日期(好像廢話太多了...)

撰寫日期:2012/07/04

08/14 更新:XDA 有比較快的 root 方法,不需要降版本,只需要
用 Recoery 即可。
感謝 Hikaru 大的提供:
http://forum.xda-developers.com/showthread.php?t=1681155


底下是我自己使用時的版本與型號,不相同的我就不敢保證了。

機 型: TF 101 Wifi
版本號: 9.2.1.24
系 統: Android 4.0.3

資料來源:Freek

聲  明:Root 可能會破壞保固贈且有一定的風險,請自行承擔責任

過程中請勿拔除 USB 與電腦的連線,並確認平板電腦電量足夠,並
「不要」 接上鍵盤。

2012年6月12日星期二

jQuery Timer Plugin

jQuery 是一個很強大的 framwork , 自從了解如何使用之後,我吃了以後頭腦靈活了很多,
每次考試都得一百分呢!!
寫網頁變得輕鬆寫意(?),就如同 jQuery 的 slogan : Write less, Do more

jQuery 的另外一個好處就是,他開放了一些標準給使用者能夠自行開發 plugin
擴充其功能,這邊介紹的 plugin 是: jQuery Timer plugin

官方網站:http://jquery.offput.ca/every/
授權方式:WTFPL (do whatever the fuck you want with it)

在開始介紹之前,先回顧一下標準的 Javascript timer 要怎麼使用:

2012年2月4日星期六

Minecraft 如何將 SMP Mod Port 到 bukkit

相同文章也發表於巴哈姆特

一般在 Minecraft Forum 看到的 SMP Mod大多是 for Vanilla 的 Mod
(Vanilla : 官方 Server),如果要能執行在 bukkit 上面,
是需要進行轉換的(轉換在這裡就稱為 Port)

為何 Vanilla Server 的 Mod 無法直接用在 bukkit 上面?
因為 Vanilla Server是經過混淆器包裝過的程式,也就是裡面的
class 檔案,都呈現 aa.class  wz.class 這類的名稱。

而雖然 bukkit 裡面也有官方 Server 的部分,但這些 class 名字是有
解譯過的,也就是會呈現最原始的情況。

再者, bukkit 有改過這些 class 的原始碼,所以在方法和變數名稱都
和原始的有所差異,所以在  decompile 的時候需要使用修改過的檔案來進行
Mapping。

首先,先了解要 port 一個 SMP Mod 所必需的東西:

2011年11月24日星期四

XT701 CM7

前幾天心血來潮找了一下這隻一年以前的手機客製化的 ROM 來試...

之前有刷過 XT720 韓版 Froyo 的 ROM,是 Nandroid backup 的版本,
老實說沒有很好用,首先大部分都還是英文(中英參雜比看全英文還累)
雖然相機部分沒甚麼問題(介面也好很多),不過有 Wifi 容易連不上的問題。
用了兩天就刷回原廠了(主要還有介面配色我不愛,又不能自己改)

這次找到的是 11/18 對岸WD (吳迪)發布的 CM7 (7.1.0.5)版本,採用的是
apply Zip update 的方式去刷, Android 版本是 2.3.7

11/25 有更新,如過刷過 11.18可以直接 apply update 不用 wipe
如果從官方上來還是要 full wipe,CM 版本: CM7.1.1

有聽到幾個問題,也有測試過,大致說明底下會附上

首先先說明一下我原本官方 2.1 的問題有那些:

2011年11月3日星期四

Custom Button 執行網頁 js

如果不知道 Custom Button 是甚麼,先看上一篇  Firefox custom toolbar button


其實當初最想要做的,是建立一個按鈕,並且執行一些自訂的 javascript
其中當然少不了存取 DOM 的動作,所以就想利用強大的 jQuery Selector
來幫忙達成。

可是問題來了, Custom Button 是套件層級的,也就是所撰寫的 javascript
是是針對「Firefox」而不是針對「該頁面」,就算把 jQuery Inject 到頁面中
也還是沒辦法使用 jQuery 語法。

不過這些其實都可以解決,首先來看看遇到的幾個問題:

2011年9月17日星期六

Firefox custom toolbar button

其實也只是套件應用而已,這邊需要用到的工具是:Custom Buttons
這是一個可以自己建立一個按鈕,按下後執行撰寫的 javascript 語法。


可以應用的地方如:
  •  jQuery Injection
  • 崩壞的天空之城 AntiFBLike


安裝完成後先在標題列按右鍵選擇新增按鈕: