[Xamarin] アプリを64bit対応してみた (Android)

2019年8月1日以降、Androidアプリを64bit対応していないと、アプリの新規登録と更新ができなくなります。 そのため、Xamarinで作っているアプリを64bit対応してみました。
2019.07.16

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2019年8月1日以降、Androidアプリを64bit対応させないと、アプリの新規登録と更新ができなくなります。

「とっくに対応してるから大丈夫」と思ってたら、「まだやから、はよしなはれ」と怒られました……。

勘違い!!!!

というわけで、やってみました。

環境

  • Windows
    • Windows 10 Pro
    • Visual Studio Community 2019: 16.1.6
  • Android
    • Pixel 3a: Android 9
  • Xamarin
    • Xamarin: 16.1.0.545
    • Xamarin.Android SDK: 9.3.0.23
    • Xamarin.iOS and Xamarin.Mac SDK: 12.10.0.157

まずは、現状確認です

GooglePlay Consoleで確認すると……、たしかに64bit対応してませんでした。

64bit対応してなかった様子

64bit対応する

Androidプロジェクトの設定画面を開き、「Androidオプション」を選択します。

続いて、構成を「Release」に変更したのち、右下の「詳細設定」を選択します。

Visual StudioでAndroidオプションを開いた

サポートされているアーキテクチャで「arm64-v8a」を追加選択します。

サポートされているアーキテクチャで「arm64-v8a」を追加選択した様子

対応自体はこれで完了です。

あとは、リリースビルドして、APKを作成すればOKです!

GooglePlay Consoleで確認する

ちゃんと認識されていました!

64bit対応した様子

64bitのみ、または、32bit & 64bitどちらが良いのか

下記どちらが良いのか不明だったので、試してみました。

  • 64bitのみ (arm64-v8a)
  • 32bit & 64bit (armeabi-v7a & arm64-v8a)

結論としては、サポートデバイス数が大きく変わるため、「32bit & 64bit」が良さそうです。

  • この結果はアプリによって異なると予想されます。ご注意ください。
アーキテクチャ サポートデバイス数 ファイルサイズ
armeabi-v7a 10,597 19.0 MB
arm64-v8a 3,213 19.1 MB
armeabi-v7a & arm64-v8a 10,598 21.1 MB

下記は、arm64-v8aのみで作成したAPKの様子です。

64bit対応のみした様子

さいごに

まだあわてるような時間じゃない。

TargetSdkVerを28にするのは、また別のお話です……。

参考