次の方法で共有


Android SDK のトラブルシューティング

重要

Visual Studio App Center は、2026 年 6 月 30 日まで引き続きサポートされる分析機能と診断機能を除き、2025 年 3 月 31 日に廃止されました。 詳細を参照してください。

どのような Android アクセス許可が必要ですか?

使用するサービスに応じて、次のアクセス許可が必要です。

  • すべてのサービス: INTERNETACCESS_NETWORK_STATE
  • 配布: REQUEST_INSTALL_PACKAGESDOWNLOAD_WITHOUT_NOTIFICATION

必要なアクセス許可は、SDK によってアプリのマニフェストに自動的にマージされます。

これらのアクセス許可のいずれも、実行時にユーザーの承認を必要としません。これらはすべてインストール時のアクセス許可です。

ポータルに分析データが表示されない

  1. SDK モジュールが正しく統合されていることを確認します。

  2. start() メソッドの呼び出しと共に正しいアプリ シークレットが含まれていることを確認します。 ポータルでアプリを開き、[作業の開始] ページに移動して、正確な start() コードをコピーできます。

  3. バックエンドに送信されるログを表示する場合は、アプリケーションでログ レベルを Verbose に変更すると、SDK によってコンソールにログが出力されます。 SDK を開始する前に、以下の API を呼び出します。

    AppCenter.setLogLevel(Log.VERBOSE);
    
    AppCenter.setLogLevel(Log.VERBOSE)
    

    ログを確認し、"App Center SDK が正常に構成されました"(情報レベルのログ)が表示されていることを確認したら、次に HTTPS リクエストのログが表示されているかどうかを確認します。

  4. デバイスがオンラインであることを確認します。

  5. 場合によっては、ログがポータルに表示されるまでに数分かかる場合があります。 その場合はしばらく待ちます。

  6. App Center バックエンドがデータを受信したかどうかを確認するには、Analytics サービスのログ フロー セクションに移動します。 送信されると、イベントが表示されます。

クラッシュがポータルに表示されない

  1. SDK モジュールが正しく統合されていることを確認します。

  2. start() メソッドの呼び出しと共に正しいアプリ シークレットが含まれていることを確認します。 ポータルでアプリを開き、[作業の開始] ページに移動して、正確な start() コードをコピーできます。

  3. クラッシュ後にアプリを再起動します。 SDK は、再起動後にのみクラッシュ ログを転送します。

  4. バックエンドに送信されるログを表示する場合は、アプリケーションでログ レベルを Verbose に変更すると、SDK によってコンソールにログが出力されます。 SDK を開始する前に、以下の API を呼び出します。

    AppCenter.setLogLevel(Log.VERBOSE);
    
    AppCenter.setLogLevel(Log.VERBOSE)
    

    ログを確認し、"App Center SDK が正常に構成されました"(情報レベルのログ)が表示されていることを確認したら、次に HTTPS リクエストのログが表示されているかどうかを確認します。

  5. デバイスがオンラインであることを確認します。

  6. 場合によっては、ログがポータルに表示されるまでに数分かかる場合があります。 その場合はしばらく待ちます。

  7. 次のアプリの起動時に SDK がクラッシュを検出したかどうかを確認する場合は、API を呼び出して、最後のセッションでアプリがクラッシュしたかどうかを確認し、アラートを表示できます。 または、クラッシュ コールバックを拡張して、サーバーに正常に送信されたかどうかを確認することもできます。

  8. App Center バックエンドがクラッシュを受け取ったかどうかを確認するには、Analytics サービスのログ フロー セクションに移動します。 送信されると、クラッシュがそこに表示されます。

配布とアプリ内の更新によって自動化された UI テストがブロックされている

自動 UI テストを実行している場合、アプリ内更新を有効にすると、自動 UI テストはブロックされます。これは、アプリ センター バックエンドに対する認証が試行されるためです。 UI テストでは、App Center Distribute を有効にしないことをお勧めします。

App Center SDK が Android アプリのサイズに与える影響は何ですか?

App Center SDK は、アプリケーションのインストール サイズへの影響を最小限に抑えるために設計されています。

これを説明するために、Android Studio の "空のアプリ" テンプレートを使用して空の Java アプリケーションを作成しました。 リリース構成でアプリをビルドし、Android 7.0 を実行しているデバイスにアプリをインストールしました。

テストは Proguard を有効にせずに実行されました。

以下の数値は、ビルド設定によって異なる場合があるため、大まかなガイドと考えてください。 Proguard を使用すると、アプリへの SDK の影響はさらに小さくなります。

使用される App Center モジュール エクスポートされた APK サイズ インストール サイズ (デバイスによって報告される)
なし (空のアプリ) 1.3 MB 3.43 MB
アプリセンター解析 1.4 MB 3.63 MB
App Center のクラッシュ 1.4 MB 3.70 MB
App Center の配布 1.4 MB 3.71 MB
すべての App Center モジュール 1.4 MB 3.82 MB

App Center シークレット値を保護する

app_secretはアプリの識別子であり、トラフィックが適用されるアプリを把握する必要があり、既存のデータを取得または編集するために使用することはできません。 app_secretが公開されている場合、最も大きなリスクはアプリに不適切なデータを送信することですが、データのセキュリティには影響しません。

機密データを取得するには、クライアント側で生成されるアプリ/ユーザー トークンを指定する必要があります。 クライアント側のデータを完全にセキュリティで保護する方法はありません。

環境変数を使用してアプリ シークレットをコードに挿入することで、アプリのセキュリティを向上させることができます。 そうすれば、シークレットはコードに表示されません。

jCenter から Maven Central への移行

jCenter のサポートが終了したため、すべてのアセンブリが Maven Central リポジトリに移動されました。 App Center を使用するには、次のように Gradle ファイル内のリポジトリに mavenCentral() を追加する必要があります。

repositories {
   google()
   mavenCentral()
}