Sean's Note: 10月 2015

2015年10月29日 星期四

Material Design

What is material?

Android 從 5.0 開始,引進了 Material Design 的概念,Material 即為物質之意,
而 Material 所處的環境是一個 3D 的空間。利用光和影 (Light and shadow) 的效果,
可以使 UI 元件看起來更為立體 (圖1)。

圖1. 圖片來源: Google Design

Material properties

Google 對 Material 的屬性提出了幾點規定:
  1. Material 應保持著 1dp 的厚度(高度)。
  2. Material 的陰影效果(Shadow) 應隨其高度而反映。
  3. Input events 不能橫跨 material 與 material 之間。
  4. 兩個 material 不能在同一高度上重疊。
  5. Material 可以改變其大小與形狀 (x, y 軸),但僅限於在原本的高度(z 軸)上。
  6. Material 不能被對摺 (fold)。
  7. 高度上的改變,通常是與使用者的互動所造成的。
  8. 更多詳見 Material properties

Elevation and shadows

Google 也對不同的 UI 元件定義的不同的高度。詳見 Elevation and shadows


2015年10月28日 星期三

A tool for reverse engineering Android apk files

由於 APK 檔裡的 AndroidManifest 已經組譯過,看到的是亂碼,
可以用第三方的工具來反組譯,就看的到了~
http://ibotpeaches.github.io/Apktool/

2015年10月16日 星期五

To get how many methods used in an APK.

GitHub 上有熱心的大大寫出了一個 tool (jar),可以用來查看 APK 用了多少 methods。
不過有點小麻煩的是得把 project 抓下來,自己 build 出 dex-method-counts.jar。
我把它  build 好放在 Google Drive 上方便懶人們直接使用:
https://drive.google.com/file/d/0B2EwSdT6jFo8ZWs2MlhxVzZwaU0/view?usp=sharing

Check following link for details:
https://github.com/mihaip/dex-method-counts

更有人把它進一步整成了 Android Studio 的 plugin:
https://github.com/KeepSafe/dexcount-gradle-plugin