問題タブ [android-build]

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.

0 投票する
2 に答える
3537 参照

build - gnustl_static を使用して外部モジュールをビルドするときに libstdc++ が見つからない

外部 Android モジュールに gnustl_static を追加していますが、ビルドすると次のエラーが発生します。

「prebuilt/ndk/android-ndk-r7/sources/cxx-stl/gnu-libstdc++/libs/armeabi-v7a/」の下を見ると、libstdc++.aが見つかりません.libsupc++.aというフィールドがあります

ビルド システムは、「build/core」フォルダにある binary.mk ファイルからこれを取得しています。

問題は、このエラーを回避する方法がわからないことです。

ビルド済みフォルダーには libstdc++ のコピーが多数ありますが、リストされている場所にはありません。は、

ここに私の Android.mk ファイルの短縮形があります:

「ターゲットを作成するルールがない」ビルドの問題を解決する方法を知っている人はいますか?

0 投票する
3 に答える
15684 参照

android - Androidソースにビルド済みのバイナリを追加する

Androidのソースコードに含めたいネイティブバイナリがあるので、コンパイルすると、バイナリが/ system/binに含まれます。

バイナリを/prebuilt/ android-arm / my-binaryフォルダーにコピーし、次の新しいAndroid.mkを作成しました。

しかし、makeを実行すると、ログに表示される唯一の参照は次のとおりです。

また、バイナリはsystem.imgにまったくインストールされていません。Androidにビルド済みのバイナリをインストールする場合もほぼ同じ質問があります。「見つかりません」ですが、質問者は基本的な手順をすでに知っていて、まったく説明されていません。make my-binaryを実行すると、投稿したのと同じ行が表示されます。

また、 make out / target / product / generic / system.img my-binaryを実行しようとしましたが、どちらも機能しません。私のバイナリはoutサブフォルダに表示されますが、system.imngには含まれません

私は何かが足りないのですか?make -j#を実行するだけで私のバイナリが/ system / binに含まれるようにする方法はありますか?

0 投票する
1 に答える
120 参照

android - libsが読み込まれる前に計算されたandroidlibs?

これは奇妙なものです。-pre-compileにターゲットがありますcustom_rules.xml。ここでは、一部のJARがlibsフォルダーにコピーされます。

クリーンビルドを実行すると、それらのライブラリが.apkに含まれないため、実行時に失敗します。の出力を見るとant -v ...、Dxはそれらのライブラリを処理していません。したがって、プロジェクトがこれらのライブラリに対してコンパイルされている間、それらはDxフェーズには含まれません。

その後、非クリーンを実行した場合ant debug、によってコピーされたJAR-pre-compileはビルドの開始時にすでに存在していたため、すべてが正常です。

私が間違っていることについて何か考えはありますか?

0 投票する
1 に答える
126 参照

android - Androidでビルド時にロケールを本番ビルドからフィルタリングする

Androidアプリの構築中にサポートされているロケールを除外できる文書化された方法はありますか? たとえば、サポートが部分的にしかビルドされていないロケールがある場合、それをデバッグ ビルドに含めたいが、リリース ビルドからは除外したい場合、それを実現するためにいじることができる構成設定はありますか?

0 投票する
1 に答える
2358 参照

android - Android ツール r20 は、ant を使用してライブラリ プロジェクトでプロジェクトをビルドしません。ライブラリに project.properties がありませんが、そうではありません。

昨日リリースされたばかりのr20まで、何ヶ月も問題なくプロジェクトをビルドするためにantを使用してきました。私は基本的に、デフォルトのビルド ファイルによって提供されるフックを使用して、いくつかのマイナーな変更を行います。私のプロジェクトは 2 つのライブラリ プロジェクトを使用しており、ビルドは eclipse から正常に動作します。ただし、ant を使用して公式の署名付きビルドを行います (これには、アプリが運用環境、ステージング環境、または QA 環境のいずれかに接続するビルドを作成するためのターゲットがあります)。これが私が得ているエラーメッセージです:

ビルドに失敗しました /Users/mwolfe/workspace/android-flex/app/build.xml:99: この行の実行中に次のエラーが発生しました: /Users/mwolfe/lib/android-sdk/tools/ant/build.xml:476 : ../shared/SomeSdk/sdk は、プロジェクト /Users/mwolfe/workspace/android-flex/shared/SomeSdk/sdk の project.properties ファイルのないパスに解決されます

ただし、このフォルダーには project.properties ファイルがあり、これは以前は正常に機能していたと確信しています。Android の build.xml の 476 行を見ると、次のようになっています。

これを引き起こしている原因とそれを修正する方法はありますか?

0 投票する
0 に答える
114 参照

java - ライブラリのエクスポート チェックボックスはスタンドアロン プロジェクトにどのような影響を与えますか?

Eclipse のプロジェクト プロパティの [注文とエクスポート] タブのエクスポート チェックボックスは、依存する Eclipse プロジェクトが親プロジェクトと同じライブラリを含める必要がないように、便宜上のみ使用されているという印象を受けました。

  1. スタンドアロン プロジェクトでライブラリのエクスポート ボックスをオンにすると、何らかの効果がありますか?
  2. Android 向けのビルドは、標準の Java プロジェクトとは異なる動作をしますか? Android プロジェクトの 1 つで、いくつかのライブラリのエクスポート ボックスをチェックしない限り、クラスが見つからないランタイム エラーが発生します。これはどのように起こりますか?
0 投票する
1 に答える
378 参照

android - プロジェクト内のAndroidユニットテスト

メインプロジェクト内からAndroidテストプロジェクトを作成しようとしています。この質問とまったく同じAndroid:メインプロジェクト内でテストプロジェクトを使用する方法(この質問は古く、まだ答えが見つからないため、これを復活させようとしています)。

基本的にはAndroidのテストと同じように再現したいと思います。これらは文字通り、メインプロジェクト内の単なる/tests/ディレクトリです。「正確なレイアウトについてはリンクを参照してください」。

これが必要な主な理由は、プロジェクトの数を減らして、プロジェクトごとに2つのルートフォルダーを必要としないようにすることです。(別名、テストプロジェクトと実際のプロジェクト)。

それ以来、ビルドには何でも自由に使用できますが、テストを自動的に実行する方法はnantだと思います。

どんな助けでも素晴らしいでしょう、ありがとう。

編集:Eclipseの問題は、このオプションを簡単に提供できないことです(少なくとも私はそれを見つけていません)。目的のディレクトリに移動して/tests/を作成できますが、添付された別のプロジェクトも一緒に表示され、リンクの問題が発生しました。)

0 投票する
2 に答える
6045 参照

android - Android で単体テストを実行できない

Mac で Android の単体テストをスクリプト化しようとしています。Eclipse 経由で実行することはできますが、すべてを自動化できる必要があります。

実行中のプロジェクトを作成するには

次のコマンドを実行しようとしています

次のエラーが発生し続けます(テストフォルダーの AndroidManifest.xml が私に与えたものです)

INSTRUMENTATION_STATUS: id=ActivityManagerService INSTRUMENTATION_STATUS: エラー = 以下の計測情報が見つかりません: ComponentInfo{com.roamdata.roampayx/android.test.InstrumentationTestRunner} android.util.AndroidException: INSTRUMENTATION_FAILED: com.roamdata.roampayx/android.test.InstrumentationTestRunner INSTRUMENTATION_STATUS_CODE : -1 at com.android.commands.am.Am.runInstrument(Am.java:616) at com.android.commands.am.Am.run(Am.java:118) at com.android.commands.am. com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method) の Am.main(Am.java:81) com.android.internal.os.RuntimeInit.main(RuntimeInit.java:235) の dalvik.system。 NativeStart.main(ネイティブメソッド)

明らかに、これはある種のパスの問題です。私が見逃しているものはありますか?mainproject フォルダーと testsproject フォルダーの両方からコマンドを実行してみました。

何か案は?

0 投票する
1 に答える
1181 参照

android - Android アプリに組み込むための Android NuPlayer のカスタマイズ

質問:

Android アプリに含めるために Android のネイティブ コンポーネントをカスタマイズするための推奨される方法は何ですか? 「ネイティブ コンポーネント」とは、ネイティブ ソース コードが AOSP で利用可能であるが、NDK ドキュメントで公開されていない API を使用するコンポーネントを意味します。


詳細:

Android メディア フレームワークの簡素化されたバージョンを使用したいと考えています (実際に必要なのは、アプリの RTSP ストリームを再生する NuPlayer だけです)。この種のカスタマイズには、AOSP のネイティブ コード (フレームワーク/ベース/メディア) を使用して、必要なものを変更する必要があることを知っています。これをビルドして、必要に応じて .so ファイルを生成します。次に、System.loadLibrary()plus JNI を実行します。

私の質問は - これを行うための推奨される方法は何ですか?

メディア フレームワークで使用される API の多くは NDK に公開されていないため、NDK を使用できません (むしろ、NDK を使用することは想定されていません)。それでは、変更したメディア フレームワーク コードをどのようにビルドすればよいでしょうか。Android.mkそこにファイルが表示されます。これらを構築するために何を使用しますか?

0 投票する
1 に答える
845 参照

android - リリースとデバッグ以外のAndroidantビルド

Androidアプリ用に設定したデフォルトのantシステムには、リリースデバッグの2つの異なるオプションがあります。を使用して2つを区別できます${build.is.packaging.debug}ant releaseまたはを実行することで、これらを1つのステップで構築できますant debug

3番目のオプションであるベータを追加できるようにしたいと思います。このようにして、デバッグコードを省略したまま、通常のユーザーに表示したくないベータユーザーの特定のフラグを有効にすることができます。antビルドシステムのどこで新しいターゲットを指定しますか?