モバイル RUM 対応環境

このページには、次のモバイルエージェントでサポートされている環境がリストされています。

Android エージェント

対応環境Nameサポートされるバージョン
Operating System Android2.3.3 以降
Architecture arm64-v8a、armeabi、armeabi-v7a、mips、mips64、x86、および x86_64-
Frameworks Ant-
Gradle0.6.3 - 8.0
Maven3.1.1 以降
Crash Reporters モバイル RUM は、サードパーティのクラッシュレポータを公式にはサポートしていません。N/A

HTTP Libraries

HttpURLConnection / HttpsURLConnection -
HttpClient -
OkHttp 2.2.0 ~ 3.9.0
ch.boye.httpclientandroidlib -
retrofit -
retrofit2 -
その他の HTTP ライブラリは、エージェント SDK を使用して追加できます。詳細については、「Android インストルメンテーションのカスタマイズ」を参照してください。-
Android Gradle プラグインのバージョンAndroid エージェントの最小バージョン
0.6.33.8.2.0
0.7.3 ~ 0.9.23.8.3.0
0.10.0 ~ 0.12.0

3.9.0.0

1.1.2 ~ 1.1.3

4.0.3.3

1.3.0 ~ 1.4.04.0.7
1.5.0 ~ 2.2.0

4.2.0

2.3.0 ~ 3.4.0(Build Tools 25.0.0 以上を強制)4.2.9
3.4.1 以降20.7.1 以降
7.022.2.0
8.023.4.0

推奨事項

  • プロジェクトで Android Gradle プラグインのバージョン 3.4.1 より前を使用している場合は、Android エージェント 20.4.0 を使用します。

  • プロジェクトで Android Gradle プラグインのバージョン 3.4.1 以降を使用している場合は、Android エージェント 20.7.1 以降を使用します。

4.2.9 より前の Android エージェントのプラグインバージョンは、クラスファイルで生成された Java 8 バイトコードにより、Android Build Tools バージョン 24 以降と互換性がありません。

Android Studio のサポート

  • Android Studio 2.1.0 ~ 2.9.9、3.2.1 ~ 3.9.9(サポートなし:3.0.0 ~ 3.2.0、4.0 以降)

iOS エージェント

対応環境Nameサポートされるバージョン
Operating System iOS9 以降
Architecture Apple 32 ビット ARM、Apple 64 ビット A7-
Framework Xcode12.5 以降
Crash Reporters モバイル RUM は、サードパーティのクラッシュレポータを公式にはサポートしていません。N/A

Apple WatchKit Extension Environments

watchOS1
HTTP Libraries
NSURLConnection -
NSURLSession -
Alamofire:Alamofire を初期化する前に iOS エージェントを初期化し、ネットワークリクエストがモニタされるようにします。iOS エージェントの初期化の前にネットワークリクエストを実行する必要がある場合は、「Alamofire のガイドライン」を参照してください。-
その他の HTTP ライブラリは、エージェント SDK を使用して追加できます。詳細については、「iOS インストルメンテーションのカスタマイズ」を参照してください。-

Alamofire のガイドライン

iOS エージェントを初期化する前に Alamofire を使用してネットワークリクエストを実行する必要がある場合は、次のサンプルコードをガイドラインとして使用して、必要な変更を加えることができます。

iOS エージェントの初期化後の Alamofire ネットワークリクエストが確実にインストゥルメント化されるようにするには、Session(前の Alamofire バージョンから名前が変更された、Alamofire 5 で定義された原則クラス)のカスタムインスタンスを初期化します。これにより、URLSession の新しいインスタンスが作成されるため、iOS エージェントによってインストゥルメント化できます。エージェントの初期化とセッションインスタンスの作成より前の Alamofire ネットワークリクエストを、エージェントはインストゥルメント化できません

注:
  • 次のコードの操作の順序は非常に重要です。インラインコメントを参照してください。
  • 次のコードは、Session のカスタマイズされたインスタンスを最初に作成することを前提としています(これは一般的な方法です)。そうでない場合は、カスタマイズされた Session の最初の使用については削除し、iOS エージェントの初期化が完了するまで作成を延期できます。
  • 次のコードをテストするには、https://www.google.com/?q=request%202 にアクセスします。これは、mySessioninstrumentedSession に置き換えた後のため、インストゥルメント化されます。他の 2 つのリクエストはインストゥルメント化されません。
import UIKit
import Alamofire
import ADEUMInstrumentation
var mySession:Session?					// customized Session singleton
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
// create customized instance of AF Session
let myConfiguration = URLSessionConfiguration.af.default
mySession = Session(configuration: myConfiguration)
let myUrl1 = URL(string: "https://www.google.com/?q=request%201")!
let urlRequest1 = URLRequest(url: myUrl1)
// the first network request prior to ADEumInstrumentation.initWith will not be instrumented
mySession?.request(urlRequest1 as URLRequestConvertible).response {
response in debugPrint(response)
// initialize iOS agent
let config = ADEumAgentConfiguration(appKey: "XX-XXX-XXX-XXX")
config.loggingLevel = .all
ADEumInstrumentation.initWith(config)
// update our Session instance singleton, instrumentedSession, so that URLSession will be instrumented
let myConfiguration = URLSessionConfiguration.af.default
let instrumentedSession = Session(configuration: myConfiguration)
// replace mySession with instrumentedSession
mySession = instrumentedSession
// subsequent requests use updated mySession from instrumentedSession, so should be instrumented
let myUrl2 = URL(string: "https://www.google.com/?q=request%202")!
let urlRequest2 = URLRequest(url: myUrl2)
mySession?.request(urlRequest2 as URLRequestConvertible).response {
response in debugPrint(response)
}
}
// has instrumentedSession been created yet? Indeterminate. If not, this request won't be instrumented
let myUrl3 = URL(string: "https://www.google.com/?q=request%203")!
let urlRequest3 = URLRequest(url: myUrl3)
mySession?.request(urlRequest3 as URLRequestConvertible).response {
response in debugPrint(response)
}
return true
}
}

Xamarin エージェント

対応環境Nameサポートされるバージョン
Operating System Android2.3.3 以降
iOS

9 以降

Architecture Xamarin.Android でサポートされる CPU アーキテクチャ -
Apple 32 ビット ARM、Apple 64 ビット A7:iOS バージョンの正しいアーキテクチャに関する情報については、「32/64-bit platform considerations」を参照してください。-
Framework .NET - Mono4.8 以降
Crash Reporters モバイル RUM は、サードパーティのクラッシュレポータを公式にはサポートしていません。N/A

Apple WatchKit Extension Environments

未対応-
HTTP Libraries 該当なし:Xamarin エージェントは、任意のライブラリで作成されたネットワークリクエストの自動インストゥルメンテーションをサポートしていません。どのライブラリが使用されているかに関係なく、手動で HTTP ネットワークリクエストをインストゥルメントする必要があります。-

Cordova プラグイン

対応環境Nameサポートされるバージョン
オペレーティングシステムAndroid4.4 ~ 8.1
iOS13 以降
アーキテクチャーAndroid:arm64-v8a、armeabi、armeabi-v7a、mips、mips64、x86、および x86_64-
iOS:Apple 32 ビット ARM、Apple 64 ビット A7-
フレームワークApache Cordova7 以降
Java Runtime EnvironmentJava17
クラッシュレポートモバイル RUM は、サードパーティのクラッシュレポータを公式にはサポートしていません。N/A
Apple WatchKit Extension 環境未対応-
その他の HTTP ライブラリ

Android:

  • HttpURLConnection/HttpsURLConnection
  • HttpClient
  • OkHttp
  • ch.boye.httpclientandroidlib
-

iOS:

  • NSURLConnection
  • NSURLSession
-

React Native エージェント

対応環境Nameサポートされるバージョン
Operating System Android4.1 以降(React Native エージェント 20.10.1 以降を使用)
iOS

11 以降(React Native エージェント 20.10.1 以降を使用)

Architecture

Android:arm64-v8a、armeabi、armeabi-v7a、mips、mips64、x86、および x86_64

-
iOS:Apple 64 ビット A7(React Native エージェント 20.10.1 以降を使用)-
Framework React Native

0.60 以降、0.70.6 以前(React Native エージェント 20.10.1 以降を使用)

0.60 以降、0.72.5 以前(React Native エージェント 24.1.0 以降を使用)

0.60 より前(React Native エージェント 20.7.0 を使用)

Crash Reporters モバイル RUM は、サードパーティのクラッシュレポータを公式にはサポートしていません。N/A

Apple WatchKit Extension Environments

未対応-
HTTP Libraries

Android:

  • HttpURLConnection / HttpsURLConnection
  • HttpClient
  • OkHttp
  • ch.boye.httpclientandroidlib
-

iOS:

  • NSURLConnection
  • NSURLSession
-