自分のカスタムライブラリapkファイル(lib.apkと言う)&私はそれを 他のアプリケーションで利用できるようにします。 私のカスタムライブラリを使用するように 他のアプリのandroid manifest.xmlファイルにuses-libraryを提供する方法。他のアプリケーションで私のカスタムライブラリapkファイルを使用する方法
答えて
<uses-library>
要素は、ファームウェアの拡張機能として提供されるアドオン用です。 AFAIK、あなたのシナリオでは使えません。
ほとんどの場合、AIDL経由でAPIを公開するサービスを実装するか、文書化されたIntent
アクションのセットを使用して他のアプリケーションとデータを交換するか、ContentProvider
を公開する必要があります。
それ以外の場合は、コードをAPKではなくJARとしてパッケージ化します。 my github repositoriesに多くの例があります(すべてのパターンはこのパターンに従います)。
私はeclipseでjarライブラリを使用しようとしています(私のプロジェクトのJava Build Pathオプションで外部Jarライブラリを追加しました)。アプリケーションはコンパイルされますが、実行時に "クラスを見つけることができませんでした"という例外があります。
実際に別のプロジェクトにリンクするプロジェクトを作成することができます。 > Javaのビルド・パス - - >プロジェクトとのプロジェクトを追加
- アドオン使用して、ライブラリ= manifest.xmlにパッケージ名
- 開いているプロジェクトのプロパティを:
あなたはEclipseで二つのことをしなければなりません中古ライブラリ
しかし、私はそれを実行させることができませんでした。 SDKはcorrecly両方のパッケージをアップロードし、私はVMがLIBSアプリにリンクする私のアプリでクラスをロードすることはできません
WARN/dalvikvm(444): Link of class 'Lme/guillaumin/android/osmtracker/activity/DisplayTrackMap;' failed
ERROR/dalvikvm(444): Could not find class 'me.guillaumin.android.osmtracker.activity.DisplayTrackMap', referenced from method me.guillaumin.android.osmtracker.activity.TrackLogger.onOptionsItemSelected
WARN/dalvikvm(444): VFY: unable to resolve const-class 154 (Lme/guillaumin/android/osmtracker/activity/DisplayTrackMap;) in Lme/guillaumin/android/osmtracker/activity/TrackLogger;
リンクエラーを取得します。
lib.apk "application"は、AndroidManifest.xmlファイルにIntent-Filters
を使用してインテントを公開する必要があります。
lib.apk内のアクティビティを使用するために必要な活動、すぐ下のような意図を開始する必要がある:
Intent i = new Intent();
i.setClass(this, libAPKActivity.class);
にし、APKライブラリのjarライブラリーからの変換を参照することを確認してくださいをjarファイルは "Java Build Path" - > "Projects"から削除され、ライブラリは "Android" - > "Library"に追加されます。
- 1. 私のアプリケーションで(プライベートキャッシュディレクトリ内の)他のアプリケーションからファイルを読み取る方法
- 2. Qtでカスタムライブラリを使用する正しい方法は?
- 3. インストールされたアプリケーションの.apkファイルをバックアップする方法は?
- 4. Androidアプリケーションで.apkファイルをダウンロードしてインストールする方法は?
- 5. android(apkファイル)でアプリケーションをビルドする方法
- 6. ジーンズを使用してApkファイルを布にアップロードする方法
- 7. Android用.apkファイルの作成方法
- 8. 私のアプリケーションから他のアプリケーションのアイコンを隠す方法
- 9. 輸出は、私は通常の方法でAPKファイルを作成
- 10. 私のアプリケーションでGithubのコードを使用する方法
- 11. 他のファイルの状態から値を使用する方法
- 12. カスタムライブラリをスクラッチファイルに追加する方法
- 13. VNC.netアプリケーションのAMQCLCHL.TABファイルでCLNTCONNチャネルを使用する方法
- 14. カスタムライブラリを使用するには?
- 15. javaコードを使用してapkファイルをプログラムで生成する方法
- 16. Silverlightアプリケーションを使用して私のホストサーバー内のファイルにアクセスする方法
- 17. XamarinアプリケーションのApkをAndroidデバイス上で実行する方法
- 18. apkファイルを開く方法
- 19. Nuitkaを私のpythonアプリケーションで使用する方法は?
- 20. 私のアプリケーションでCountDownTimerを使用する方法
- 21. 私のアプリケーションでカレンダーを使用する方法
- 22. cordovaアプリケーションにインストールされたapkファイルからファイルを解読する方法
- 23. Swift:他のファイルをアプリケーションにインポートする方法
- 24. ファイルが完全で、他のアプリケーションでPHPで使用されていないことを確認する方法
- 25. MVC 3のRazorを使用したカスタムライブラリ
- 26. カスタムライブラリを使用したVHDLデザインのシミュレーション
- 27. iPhoneフレームワークを作成して他のiPhoneアプリケーションで使用する方法
- 28. 他のapkをサイレントモードでインストールする
- 29. マニフェストでカスタムライブラリのアクティビティを宣言する方法
- 30. Kohanaのカスタムライブラリの使い方3
なぜAPKが必要ですか? JARをロールしても問題ありません。 – Matthias
私は同じ問題があります。マルチプルアクティビティとして機能するモジュラソフトウェアがあり、すべてのモジュールでインターフェイスと共通コードを繰り返す必要はありませんでした。私がjar libを使うことを選んだのであればそうです。 – Spidey
lib.apkが処理するjarファイルにリソースを含めることは困難です。 – phreed