• English日本語한국어
  • ログイン今すぐ開始

GradleおよびAndroid Studioを使用してAndroidアプリを設定する

Androidエージェントをインストールすると、モバイルアプリを設定することでパフォーマンスや安定性、ユーザーエンゲージメントを高めることができます。GradleとAndroid Studioを使用している場合は、以下の手順に従ってください。

GradleおよびAndroid Studioを使用して設定

GradleとAndroid StudioでAndroidアプリを設定するこれらの手順は、Androidのガイド付きUIインストールの「DSLコードを追加」手順にも表示されます。

  1. プラグインが適用される前に、プロジェクトの最上位のbuild.gradleファイルで次のコードをマージまたは追加します。

  2. (オプション)ProGuardまたはDexGuardの場合:

    a. プロジェクトのルートディレクトリ(/projectname/app)に、以下の行を含むnewrelic.propertiesファイルを追加します。

    com.newrelic.application_token=GENERATED_TOKEN

    b. Androidアプリ用のProGuardまたはDexGuardの設定手順を完了します。次に、このページに戻り、次の手順に進みます。

  1. アプリケーションのアクセス権限を設定します。AndroidManifest.xmlファイルに以下の行を追加して、AndroidアプリがINTERNETおよびACCESS_NETWORK_STATE権限を要求するようにします。

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  2. Androidエージェントを起動します。Default ActivityManifestに定義されているもの)にNewRelicクラスをインポートします。

    import com.newrelic.agent.android.NewRelic;

    重要

    想定外の動作や不安定な動作が生じる可能性があるため、他のクラスでのモバイルモニタリングエージェントの起動はサポートされていません。

  3. モバイルモニタリングを初期化します。onCreate()メソッドに、次のコールを追加します。

    NewRelic.withApplicationToken("GENERATED_TOKEN").start(this.getApplication());
  4. (オプション)ログ記録レベルを変更します。

  5. アプリケーションを構築して実行します。プロジェクトをクリーンにし、エミュレーターまたはデバイスでアプリケーションを実行しトラフィックを発生させます。

  6. 数分すると、概要ページからAndroidアプリケーションのデータを表示します。one.newrelic.com > Mobile >(アプリを選択)の順に移動します。

Androidのインストレーションに問題がある場合や、モバイルモニタリングUIにデータが表示されない場合は、トラブルシューティング手順に従ってください。

このドキュメントはインストールで役立ちましたか。

AndroidアプリのMultidexサポートを有効にして、64K参照制限を回避する方法をお読みください。

Multidexサポートを有効にする

Android 5.0(APIレベル21)より前のAndroidバージョン用のNew Relicモバイルモニタリングでは、アプリコードの実行にDalvikランタイムを使用します。デフォルトで、DalvikはアプリをAPK当たり単一のclasses.dexバイトコードファイルに制限します。この制限を回避するには、Multidexサポートを有効化しなければなりません。こうすることで、アプリのプライマリDEXファイルとなり、追加のDEXファイルとそれらファイル内のコードへのアクセスを管理するMultidexサポートライブラリを使えるようになります。

Multidexアプリケーション用に各DEXファイルを構築する際、ビルドツールはアプリケーションが正常に起動できるよう、プライマリDEXファイルにどのクラスが必要か決めるため複雑な意思決定を行います。起動中に必要となるクラスがプライマリDEXファイルに用意されてない場合、アプリケーションはjava.lang.NoClassDefFoundErrorエラーでクラッシュします。

java.lang.NoClassDefFoundErrorエラーが表示された場合は、プライマリDEXファイルで必要に応じてこれらの追加クラスを手動で指定する必要があります。

  1. プロジェクトの/appフォルダー内にproguard.multidex.configファイルを作成します。パッケージ名が反映するように、mypackageを更新します。

    ####################
    # keep class names #
    ####################
    #Keep New Relic in the main dex
    -keep class com.newrelic.** { *; }
    -keep class com.mypackage.activities.** { *; }
  2. アプリレベルのbuild.gradleファイルに、以下のコードをマージします。

    android {
    defaultConfig{
    multiDexKeepProguard file("proguard.multidex.config")
    }
    }

詳細については、プライマリDEXファイルに必要なクラス宣言に関する、Android開発者用ドキュメントを参照してください。

New Relic Gradleプラグインの設定

Gradle構築の間のAndroidエージェントプラグインの動作の設定方法の詳細は、New Relic Gradleプラグイン拡張ガイドをご覧ください。

Copyright © 2023 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.