「is Library」チェックボックスをオンにすると、「Under the Cover」は何をしますか?
-
27-10-2019 - |
質問
既存の Android アプリケーション プロジェクトを Android ライブラリ プロジェクトに変換するときに気づきました。 「ライブラリです」チェックボックスをオンにする, 、プロジェクトのソース コードまたは XML ファイルは何も変更されません。
では、「is Library」チェックボックスをオンにすると実際には何が起こるのでしょうか?内部的に何が変わるかというと、 パッケージおよび/またはプロジェクト ファイル内?これについて詳しくはどこで確認できますか?
私の質問をより良く説明するには:
- 私が知りたいのは(主にトラブルシューティングの目的で)何が違うのか ライブラリパッケージ「カバーの下」からのアプリケーションパッケージ?
- プロジェクトは「図書館プロジェクト」であるという事実です どこかでマークされています?もしそうなら、それはそれをどこにマークしますか(明らかにソースファイルではなく、res xmlファイルでさえも)
解決
Create lib-Projectコマンドは、プロジェクトがライブラリであることをビルドシステムに示すプリセットプロパティを含む標準プロジェクト構造を作成します。この行をプロジェクトのdefault.propertiesファイルに追加することでこれを行います。
android.library=true
言い換えれば、これはオペレーティング システムではなくビルド システムによって利用されるプロパティです。
アップデート:私は iPhone を使用しているので、全体の言い換えは入力しませんが、Java JAR と Android ライブラリ プロジェクトの違いについて説明した非常に優れたブログ記事がここにあります。これには、dex ツールがどのようにリソースと dex コードをライブラリ プロジェクトに追加するかが含まれます。 .apk:
http://devmaze.wordpress.com/2011/05/22/android-application-android-libraries-and-jar-libraries/
他のヒント
開発者から: http://developer.android.com/guide / development / projects / projects-eclipse.html
Androidを指定することもできます 図書館プロジェクトとしてのプロジェクト、 他の人と共有することができます それに依存するプロジェクト。一度 Androidプロジェクトはとして指定されています 図書館プロジェクト、それはできません デバイスにインストールされています。
ライブラリプロジェクトは、jarで慣れているように、個別の再配布可能なファイルとしてパッケージ化されていません。アプリケーションのapkファイルとマージされます。
リンクしたページで、
[プロパティ]ダイアログが閉じるとすぐに、Eclipseはライブラリプロジェクトのコンテンツを含むプロジェクトを再構築します。