2015-10-28 10 views
5

私は自分のカスタマイズしたフレームワーク(android.jar)を持っていて、Android Studio内で使用したいと思っています。私は次のように私のbuild.gradleに説明があった:Android Studio内のカスタマイズされたフレームワークライブラリ(android.jar)を使用

dependencies { 
    compile files('myandroid.jar') 
} 

しかし、Androidのメーカーはまだデフォルトのフレームワーク(android.jar)を使用します。期待される状況はEclipseのようなもので、私はライブラリの順序を整えることができます。 Android Studioでは、外部ライブラリの注文のみを手配でき、デフォルトのフレームワークライブラリとは関係ありません。私のカスタマイズされたandroid.jarがデフォルトのものよりも高い注文を持つようにする方法はありますか?

ありがとうございます!

+0

この問題は私のカスタマイズしたandroid.jarを参照することはできません、私のモジュールに関するものではありません。カスタマイズされたフレームワークライブラリとデフォルトのフレームワークライブラリ(Android SDKのライブラリ)の両方が同じクラスを持っているようです(例:android.telephony.ServiceState)。アンドロイドスタジオは、デフォルトのフレームワークライブラリ(Android SDKのライブラリ)を使用して、android.telephony.ServiceState用の新しい追加APIが認識されなくなる... – superx3

+0

あなたは答えを得ましたか? –

+0

いいえ、私はまだ答えを得ていません!ただし、デフォルトのandroid.jarとカスタマイズしたものを組み合わせることができます。両方の.jarを解凍し、元のandroid.jarから欠落しているクラスをコピーし、.jarに戻してください....この作業を簡単にする簡単なプログラムを書くことができます.... – superx3

答えて

1

.jarをあなたのlibsフォルダに追加してから、右クリックしてadd as a libraryを選択してください。

それでも問題が解決しない場合は、プロジェクトフォルダを右クリックしてOpen Modules settingsを選択してください。依存関係とライブラリをそこで管理することができます。

+0

ありがとうございました!しかしAndroid Studioでは、android.jarがデフォルトのものより高い優先度を持つことはできません。 "Modules Settings"ウィンドウを開いても、デフォルトのandroid.jarはリストにありません。カスタマイズされたandroid.jarが最初に参照されることは保証できません。 – superx3

0

モジュールのbuild.gradleファイルでこれを試してください。

dependencies { 
    compile files('libs/myandroid.jar') 
} 
+0

ありがとうございます!しかし、ファイルパスが正しい限り、ライブラリを別のフォルダに置くことができるようです。そしてそれは私を悩ます図書館の参照命令です... – superx3

1

置き、あなたの依存関係内でこの行:まだ動作しない場合は、私たちはクラスパスを構築するために私たちのライブラリを追加することができます

provided files('libs/myandroid.jar') 

。アプリケーションのbuild.gradleに、以下を追加してください:

allprojects { 
    repositories { 
     jcenter() 
    } 
    gradle.projectsEvaluated { 
     tasks.withType(JavaCompile) { 
      options.compilerArgs.add('-Xbootclasspath/p:app\\libs\\mylibs.jar') 
     } 
    } 
} 

私はmylib.jarがapp/libsに置かれています。 IDE上にいくつかのエラーが表示されることがありますが、アプリケーションのビルドは正常です。

+0

ありがとう!しかし、ファイルパスが正しい限り、ライブラリを別のフォルダに置くことができるようです。そしてライブラリの参照ORDERは私を悩ましています...私は自分のカスタマイズされたクラスを、Androidのフレームワークが既に存在するものに置き換えて欲しいです。その場合、私はカスタマイズされたフレームワークを確保する必要があります。jarは参照優先度が高い! – superx3

+0

私は自分の答えを更新しました。 – anhtuannd

関連する問題