2013年5月21日火曜日

Motorola RAZR i XT890でzramを使ってみる

最近RAZR iを使っててちょっとメモリ足りてないなぁと…zram使えるとちょっとはマシになるかなぁ?と。

カーネルソース眺めてたらi386_mfld_moto_defconfigに
CONFIG_ZRAM=y
と書かれてましたよ?カーネル弄る必要無さそうですね?

って事で端末Boot時にこんな感じに
#!/system/bin/sh

echo 90 > /proc/sys/vm/swappiness
echo $((100*1024*1024)) > /sys/block/zram0/disksize
busybox mknod /dev/zram0 b 253 0
busybox mkswap /dev/zram0
busybox swapon /dev/zram0


127|shell@smi:/ $ busybox free
busybox free
              total         used         free       shared      buffers
  Mem:       994000       901344        92656            0        59392
 Swap:       102396        58924        43472
Total:      1096396       960268       136128

swappinessとzram割り当てサイズはとりあえず、な値です。

2013年5月11日土曜日

Motorola RAZR i XT890のNFCが常時反応するようにする

@kassy_kz が面白そうな事をしていたので試してみた。

中二病でも開発がしたい

Nexus持ってないのでsmali読んで適当に書き換える。

/system/app/Nfc.apk

com/android/nfc/NfcService.smali


2120行目あたり
    iget-boolean v1, p0, Lcom/android/nfc/NfcService;->mNfcPollingEnabled:Z

    const/4 v1, 0x0
    if-eqz v1, :cond_7

    .line 2204
    :cond_6
    const-string v1, "NfcService"

    const-string v2, "NFC-C OFF, disconnect"

    invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2205
    const/4 v1, 0x0

    iput-boolean v1, p0, Lcom/android/nfc/NfcService;->mNfcPollingEnabled:Z

2400行目あたり
    iget-boolean v1, p0, Lcom/android/nfc/NfcService;->mNfcPollingEnabled:Z

    const/4 v1, 0x0
    if-eqz v1, :cond_10

    .line 2267
    :cond_16
    const-string v1, "NfcService"

    const-string v2, "NFC-C OFF"

    invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2268
    const/4 v1, 0x0

    iput-boolean v1, p0, Lcom/android/nfc/NfcService;->mNfcPollingEnabled:Z

条件分岐「if-eqz v1, :cond_xx」の手前に「const/4 v1, 0x0」と書いてやって潰した。
POLLING_MODEの変更だと一つ目のNFC-C OFFを潰せないのでこんな感じに、うごきゃいいんだよ、面倒くさい。


NFCタグ読み込んだタイミングでスクリーンオンにしたりロック解除したりするのはみんなのNFCアプリ側でやればいーんじゃないですかね。

TaskerやLlamaのNFCタグ読んであーだこーだ機能使えば面白い使い方出来るかもね?



電力消費量の増加がどの程度あるかは気が向いたら測定してみる。