タグ別アーカイブ: Xposed

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')
}

以上。

広告