タグ別アーカイブ: Android

Android StudioにXposedBridgeApi.jarをインポート

Android StudioでXposed Moduleを作成するときにつまずいた。すぐ解決したものの、検索しても転んで起き上がれないケースばかりが引っかかってくるのでのでメモ。

app/libsにXposedBridgeAPI.jarを突っ込んで右クリックメニューからライブラリとして追加を選ぶところは通常通りだが、このままだとXposedBridgeAPI.jarが includeされてしまう。その結果、Framework、Module双方にAPIライブラリの実体が存在してしまうので、実行時にModuleクラスのロードに失敗する。APIライブラリを参照しつつincludeされないようにする必要がある。

キモはapp/build.gradleの記述。

動かない例

dependencies {
// Android Studioが自動生成
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile files('libs/XposedBridgeApi-54.jar')
}

動く例

dependencies {
//    compile fileTree(dir: 'libs', include: ['*.jar'])
//    compile files('libs/XposedBridgeApi-54.jar')
// compile fileTreeをコメントアウトしただけだとビルドできない
    provided files('libs/XposedBridgeApi-54.jar')
}

以上。

SGS2 kernel UV OC CWM

EDITED: Previous kernels have a problem, changing CWMManager.apk / Superuser.apk / su to 0 byte size.  New kernels work correctly Rooting. When not working, please check /system/cfroot/.

i9100ke7-uv-oc-cwm4-20110618a.tar
i9100kf1-uv-oc-cwm4-20110618a.tar

deleted :
i9100ke7-uv-oc-cwm4-20110618.tar
i9100kf1-uv-oc-cwm4-20110618.tar

Changes:

Please give me Exynos4210 users manual X-(
ちと疲れたょ(´・ω・`)

SGS2 kernel CWM XUV OC

This kernel is based on coolbho3000’s over clocked Galaxy S II kernel and codeworkx’s initramfs with ClockworkMod Recovery 4.0.0.2. For smooth useability and long battery life, not for benchmark scores.

Some other patches are applied;

  • whole system wide undervolted
  • whole system wide underclocked scaling steps adds
  • BFQ I/O scheduler
  • modified Interactive Governor
  • task scheduler patched
  • optimized with patched gcc-4.5.3

at your own risk, and enjoy!

http://www.mediafire.com/?468t64fyaf78ddf

EDIT: June 17, 2011

I made more mild undervolted kernel. And changed to mount /system as RW(codeworkx’s default) to RO(stock default).

http://www.mediafire.com/?7cj6bsuvhs9mz9s

 

 

 

SGS2カーネルいじり日記メモ5

いろいろ試して分かった事。

  • gccは4.4.6までは通る。4.6.0は起動するもののradio driverが動作しなかった。頑張れば動くのかも。
  • アイドル時のバスクロックを落とせばNoLEDの消費電力押さえられるかと思ったが焼け石に水。一番効くのは、MALI-400のアイドル時クロックと電圧を下げる事。
  • newlibは下記のようにカリカリに最適化しても大丈夫だった。本当に使っているのかちょっと不安w

CFLAGS_FOR_TARGET = -g -O3 -march=armv7-a -mtune=cortex-a9 ¥
-mfpu=neon -mfloat-abi=softfp -mvectorize-with-neon-quad ¥
-fomit-frame-pointer -fstrength-reduce

  • カーネル自体のビルドは-O3だと通らない。が、-O2に最適化オプション追加しまくる分には通る。
  • gcc-4.4.6にcortex-a9最適化したnewlibを使って、cortex-a9最適化をかけまくったカーネルはstock KE2より体感で分かるくらい速くなる。
  • ところが、stock KE7カーネルにQuadrantスコアで大きく引き離される。最大CPUが10%、I/Oが100%ほどstock KE7に引き離され、2DGは自前カーネルが5%ほど勝る。
  • 色々設定を試すもひっくり返せず落ち込む。
  • が、同条件(max1200MHz, ondemand governor)で起動速度を比較すると、自前の方がブートスプラッシュの表示が短い。
  • ああ、そういうことなのねorz


SGS2 XWKE7用uv-ocカーネルその2

coolbho3000さんのOCカーネルを元に各所uv化。interactive governorをベンチマークより体感速度と電力効率優先に修正。initramfsはKE7のものをunsecureにしてzImage化。

今回は、GPU・フレームバッファ周りメインに全体的にさらに省電力化。interactive governorの振る舞いをhotplug SMP・電力効率・体感速度の観点から動作修正。

デフォルトでMAX1.504GHz/interactive governorですが高負荷時にしか1.504GHzのOCは使いませんので、SetCPUなどで最高周波数を制限しなくても無駄に電力は消費しにくいと思います。まいどですが、xuvなので動かなかったら諦めてください。

http://www.mediafire.com/?r10o634pnt2rk44

 

SGS2カーネルいじり日記メモ4

コア電圧を制御しても自動輝度調節を暗めにしても、なかなかNexus OneのCM並に減らせない消費電力のブレイクスルーを発見。自動輝度調節の設定を-40カンデラから-20カンデラに変えてもバッテリーの保ちが良くなった。っていうか、ここでこんなに消費電力違うのって設計としてどうかと思うってところだったorz

消費電力に余裕ができたのでクロックアップもしてみたものの、消費電力と速度向上という点で効率が良いスイートスポットに当たっているのは1GHzの次は1.504GHzで、1.4GHzも1.6GHzもいまひとつ。coolbho3000さんはよく検討してOC周波数を決定している。

だいたい弄りどころは抑えたので、新しいカーネルソースが出るまではこれでいけそう。とかいいつつ、弄りたくなる性分orz

SGS2 XWKE7用uv-ocカーネル

自己責任で。諸々トータルで省電力化。その分、コア電圧に少しマージンをとったので動く個体が多いと思います。合わせてTitanium Backupなどで、Samsungアプリが起動しないようにすると電力消費が抑えられます。

http://www.mediafire.com/file/fttrd3vc9cjqtny/i9100ke7-xuv-oc-20110524.tar

基本、自分用なので動かない方は他をあたってください。