問題タブ [android-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - ライブラリ/JARをEclipseAndroidプロジェクトに追加する
これは、EclipseのAndroidプロジェクトにサードパーティライブラリ(JAR)を追加することに関する2部構成の質問です。
質問の最初の部分は、サードパーティのJAR(ライブラリ)をAndroidプロジェクトに追加しようとすると、最初に次の問題が発生することです。
XMLの解析エラー:バインドされていないプレフィックス
そのJARのクラスを使用しようとしているためです(そして、何らかの方法でプレフィックスを定義する必要があります)。どうしたの?
次に、(それを修正した後、答えは以下に示されています)、私のアプリケーションはAndroidで動作せず、デバッガー(LogCat)を介して、消費しようとしているクラスが存在しないことを発見しました。
原因:java.lang.ClassNotFoundException:com.github.droidfu.widgets.WebImageView .. ..
Eclipseでコンパイルまたはリンカーエラーが発生しないのに、エミュレーターでこの問題が発生するのはなぜですか?
これらの2つの質問は、以下で自分で答えるという意味で、レトリックです。このフォーラムの他の投稿は問題に忍び寄り、他の場所では議論がありますが、私は次の人がやって来るのをより明確に助けることができると感じています。
android - Android 用ライブラリの出荷方法
Android用のライブラリを開発したい。どのような形で発送できますか?jar、apk、または何か他のものですか?他の開発者がアプリケーションで私のライブラリを使用できるようにするにはどうすればよいですか?
android - Androidライブラリプロジェクトの文字列を置換(または「オーバーライド」)します
私はAndroidライブラリプロジェクトを作成しようとしていますが、ビルドプロセスは正常に機能していますが、ライブラリを使用するプロジェクトのリソースを置き換える際に問題が発生しています。
私の図書館には次のものがあります。
/li>library_layout.xml
含む_を呼び出すJavaファイル
/li>
/li>strings.xml
を含むリソース
私が持っているライブラリを使用するプロジェクトでは
/li>strings.xml
を含むリソース
私が期待する動作は、ライブラリを使用してプロジェクトを実行すると、テキストビューに実際の文字列コンテンツが表示されますが、実際にはfalseが含まれていることです。
ライブラリを使用するアプリを見ると、2つのR
ファイルがあり、両方R.string.my_string
とも同じ数値になっています。
android - Android アプリに POJO または Cursor ベースのライブラリを統合しますか?
私の会社は、Android 用のライブラリを公開したいと考えています。これにより、他の人が当社のコンテンツをカスタム アプリに簡単に統合できるようになります。
現在、コンテンツをどのように提供すればよいか、まだ非常に確信が持てません。現在、POJO を使用してプロジェクトにデータを提供しています。
私は、カーソルを支持することが判明した「POJO対カーソル」の議論をフォローしていました。また、誰かが解析されたリソースを SQLLite-DB に保存し、後でカーソルを介してアクセスする例も見ました。
カーソルには、POJO に比べて多くの利点があることを知っています。しかし、ライブラリを実装する必要があるときにカーソルをいじりたいですか? あなたの中には、そのようなライブラリを書いた人もいるかもしれません。何を、なぜ使用したのですか?
他のライブラリがそれをどのように行っているか...
応答形式: サーバー応答は JSON 文字列です。SDK には、これを JSONObject に変換する Util.parseJson() メソッドが用意されており、そのフィールドと値を調べてアクセスできます。
android - ライブラリプロジェクトからのAndroidインポートリソース
アプリケーションプロジェクトのライブラリプロジェクトで定義されている文字列のようなリソースを使用することは可能ですか?もしそうなら、どのように?文字列を解決できないようですので、次のように解決したいと思います。
私にこの例外を与える
WARN / ResourceType(278):リソース番号0x00000000の値を取得するときにパッケージ識別子がありませんWARN / System.err(278):android.content.res.Resources $ NotFoundException:文字列リソースID#0x0
私が探している文字列( "sample")は、ライブラリプロジェクトのstrings.xmlで提供されているこのパッケージに間違いなく含まれています。R.javaでも見ることができます
android - Androidライブラリプロジェクトを使用する場合、xmlリソースを適切に参照するにはどうすればよいですか?
styles.xmlファイルで定義されたいくつかのスタイル/テーマを含むAndroidライブラリプロジェクトがあります。
通常、他のxmlレイアウトまたはマニフェストファイルでこのスタイルを参照する場合は、次のように記述します。android:theme="@style/TheNameOfTheStyle"
ライブラリプロジェクトを使用する場合、依存プロジェクトはどのようにしてそのスタイルを適切に参照するのでしょうか。そのままにしておくと、android:theme="@style/TheNameOfTheStyle"
その名前に一致するリソースが見つからないというエラーが表示されます。
これと同じ質問が、@ string、@colorなどの他の参照にも当てはまると思います。
ありがとう
編集:わかりました。通常どおりに参照することになっているようですが、Eclipseのコンソールで次のエラーが発生します。
エラー:指定された名前に一致するリソースが見つかりません(「theme」で値「@ style / ThemeName」)。
(facepalm)編集
Eclipseで「プロジェクトをクリーンアップ」する必要がありました。今それは働いています。
android - ライブラリ プロジェクトの TabActivity、android.R.id.tabhost が見つからないというエラー
フレームワークの一部として、他の開発者が使用するテンプレート/BaseActivity クラスを作成しようとしています。
クラスを TabActivity で拡張すると、xml は次のようになります/
他のプロジェクトで拡張してこのアクティビティを使用すると、android.R.id.tabhost を取得できず、これが必要であるというエラーが表示されます。
これは、getTabHost() または findViewById() の両方のシナリオを呼び出しても発生します。
注意:タブでビューを使用するために、TabActivityを拡張せずにこれを試しました。それは正常に動作します。しかし、アクティビティをタブ コンテンツとして使用したいと考えています。
これは、ライブラリ プロジェクトにして含める場合の問題だと思います。
さらに説明が必要な場合、またはいくつかの回避策を知っている場合は、お知らせください。
android - Androidライブラリプロジェクトに関して、Eclipse / ADTはどれほど賢いですか?
そのため、"Utility"
いくつかのプロジェクトにはいくつかのスタイルクラスがあります。アプリ固有ではないグルーコード(ほとんどの場合、ラッパーとインターフェース)のすべてまたはほとんどを含むAndroidライブラリプロジェクトにそれらを移動できるかどうか知りたいです。
だから、私の質問は、そのライブラリで必要のないファイルはどうなるのかということです。Androidライブラリプロジェクトは基本的にコードを他のプロジェクトにコピーするだけなので、「汎用」ライブラリでコードの25%を使用すると言うと、アプリには実際にすべての100%のバイトコードが含まれるのでしょうか、それとも適切に削除されますか必要なものだけに絞ってください。
過去にProguardで未使用のクラスに問題があったので、今はADTに一度噛まれ、2回恥ずかしがり屋になっています...
android - Android ライブラリ プロジェクト - クラスの定義
おい!(ここから長文失礼します)
基本的に同じコードに基づいたいくつかのアプリケーションを作成しています。
各アプリケーションには違いがあり、一部には新しいアクティビティがあり、すべてに異なるリソースが割り当てられます。
すべての共通コードを 1 か所に配置できるように、Android ライブラリ プロジェクトを使用しようとしています。そのため、大規模な変更は一度だけ行うだけで、すべてのプロジェクトが更新されます。
さて、リソースは簡単な解決策です。メイン アプリケーションで各リソースを定義するだけで、命名規則が同じである限り、これらのリソースはライブラリ プロジェクトのリソースをオーバーライドします。
さて、私の質問は、クラス以外で同じことを行うにはどうすればよいですか? たとえば、すべてのビューに共通するコードのラッパーとしてベース ビューを使用することはできません。この中で、私は様々な活動を開始します。異なる UI と機能が含まれるため、3 つのアプリケーションすべてが異なるアクティビティを起動する必要がある場合はどうすればよいでしょうか? これについてどうすればいいですか?ライブラリ プロジェクトは、メイン プロジェクトが既にコンパイルされているため、別のアクティビティを使用する必要があることを認識しません。
私が考えたいくつかの解決策がありますが、他の誰かが何かアイデアを持っているかどうか知りたいですか? ここでのフィードバックは非常に役立ちます。
起動されるライブラリ プロジェクトのアクティビティには、ロードされるクラスへの参照が格納されます。これは、起動時にメイン アプリケーションで定義されます。これは、ライブラリ プロジェクトがこのアクティビティを呼び出したときで、指示されたものを読み込むことができます。
ライブラリ プロジェクト アクティビティ内で変更されないすべての機能を残します。次に、このアクティビティを拡張し、onCreate をオーバーライドして、ここで必要なこと (さまざまなレイアウトの読み込み、ビューの設定など) を行います。ライブラリ プロジェクトではなくメイン アプリケーションでほとんどのエントリ ポイントを定義する必要があるため、これには欠点があります。
私の問題がここにあることをフォローしていただければ幸いです。これについて説明が不十分であるかどうか尋ねてください。
ありがとう、
アダム
android - Android ライブラリ プロジェクトとアクティビティ
Android SDK ライブラリを開発しています。このライブラリでは、いくつかのアクティビティを宣言して使用しました。今、アプリケーションにライブラリを含めようとしましたが、アプリですべてのライブラリ アクティビティを宣言する必要があることに気付きました。ライブラリには多くのアクティビティが含まれており、開発者はすべてのアクティビティを自分のアプリにコピーする必要があるため、これは非常に悪いことです。これに対する解決策はありますか?