Android APIレベルの変更について

掲題の件について質問させて下さい。




BPのみで制作したプロジェクトをGoogle Play Store へのリリースにむけて

まずはベータ版のテスト!と思い、Android SDKの設定をして




Google Play ConsoleにUE4でパッケージ化してできたAPKファイルをなんとかアップロードするところまでできたのですが


242890-playconsole警告メッセーシ.png



このような警告メッセージがでてきました。


警告メッセージや、詳細リンク先[link text][3]にも書いてあるのですが

「2018年8月から、対象の少なくともAndroid8.0(APIレベル26)を、
そのアプリのアップデートは 2018年11月からのAndroid 8.0をターゲットにする必要がある」とあったので

**「今からリリースするアプリはAPIレベル26以上でないといけない(?)」**と理解し
APIレベルを26以上に変更しようと思ったのですが、やり方が分からず行き詰まっています。

APIレベルの変更方法を教えて頂けないでしょうか?




以下はここまでの手順です。

①KeyStoreの作成(こちらのUE4ドキュメント[link text][4]に沿ってやりました)

②GooglePlayConsoleアカウント と Googleペイメントのアカウントの登録

③APKファイルをベータ版にアップロードして警告(2枚目画像)



またやってみたことは
⇨ AndroidSDK設定(画像1枚目)の「NDK API Level」をAndroid-27に変更してパッケージ化
⇢失敗(エラーログにNDKのPlatformsに指定のものがありません)
とでたので

(※Android-21とAndroid-24はパッケージ化でるのですが同様のAPI警告がでます)

UE4ドキュメントの「追加のSDKをインストールする」[link text][5]の手順で






API27をインストール。

(ドキュメントに書いてあるという理由でSDKをインストールすればAPIの問題も解決すると思ってしまいました。)


しかし、NDKフォルダに変化はありませんでした。



根本的な原因がわからずにいます。





問題としてはこちらのフォーラム[link text][8]で質問されてる方と同じです。



ぜひお力添えのほど宜しくお願い致します。

Android開発のライブラリには SDKNDK が存在します。
画像でインストールしているのは SDK で、エクスプローラーで表示しているものは NDK ですが、このあたりの認識は合っている、ということで良いですか?

新しい NDK が必要な場合は、下記からダウンロードし、インストールする必要があります。
Android8.0対応となると、15c以降になりますね。

https://developer.android.com/ndk/downloads/


蛇足ですが、4.19に同梱されているのNVIDIA CodeWorks for Android 1R6でインストールされるNDKのバージョンは12bです。
(最新のCodeWorks1R7でも、NDKバージョンは14bとなっています)
リリースノートで公表されていない以上、UE4が対応できるかどうかはわからないので、4.19でAndroid8.0以降の対応を行うのはおすすめできないとは思います。

Unreal Engine 4.19 Release Notes

T_Sumisaki様

いつもご回答ありがとうございます!






SDKは開発キットで、NDKはアンドロイドのバージョン対応というざっくりですが違いの認識はしています。

インストールしたのはSDKで、NDKにもきっと反映されるのだと思っていました。。

Ver4.19を使う理由も特になく「新しい方が問題もなく安心して使えそう」という具合で選んでるのですが

バージョンを下げようと思った場合、Ver4.18でいいのでしょうか?

今から教えて頂いたURLよりダウンロードして一度Ver4.19で試してみます!

SDKはJavaによる開発キット(エミューレータなどはこっちに入っている)、NDKはネイティブ言語(C/C++)による開発キット(UE4はC++なのでビルドはこっち)です

UE4のバージョンを下げるのは更におすすめしません
今回の問題は4.19時点でNDKRev15c以降に公式対応していないことであり、UE4のバージョンを下げることで解決するものではありません

公式対応を待つのであれば、UE4.20以降で対応するのを待つのが正攻法でしょう
実機で試して動けばOKだとは思いますが…

SDKはJavaによる開発キット(エミューレータなどはこっちに入っている)、NDKはネイティブ言語(C/C++)による開発キット(UE4はC++なのでビルドはこっち)です

UE4のバージョンを下げるのは更におすすめしません
今回の問題はUE4がNDKRev15c以降に対応していないことであり、バージョンを下げて解決するものではありません

UE4.20以降で対応するのを待つのが正攻法でしょう
大きな問題なので、近い内に対応されるとは思います
新しいNDKを入れてビルドして、実機で動けば問題ないとは思いますが…

Platforms > Android の設定にある Minimum SDK Version Target SDK Version は設定できていますか?

なるほどです!



なので以前のお答えの時のJava(中間言語)はリバースエンジニアリング(ハッキング)の可能性はあり、

ブループリント(C++)はネイティブ言語(機械語)なのでそこまで心配しなくていいという理解をしました!(あっていますでしょうか。)





また最新のNDKをインストールして、AndroidSDKに設定し直し








アップロードを試みたのですが、結果は同じでした。




どこが間違っているのでしょうか?
ご指摘頂けると幸いです。

早とちりしてしまいました。



>今回の問題はUE4がNDKRev15c以降に対応していないことであり、バージョンを下げて解決するものではありません





Ver4.19では解決できない問題ということですよね(汗)

T_Sumisaki様がおっしゃられるようにVer4.20まで待つことにします。





エピックさんに現問題だけお伝えしておきます。
ご回答ありがとうございました!

そちらの設定は「9」になっています。

初めまして
今更かもしれませんが私も同じ状態になりましたが、
一応解決策?を見つけれたので書いておきます。

とりあえず、対象SDKを26にすれば、警告は出ないので、Androidの項目にある
「Target SDK version」を「26」にしてパッケージ化すれば警告は出なくなりました。
(SDKやNDKがそのままなのでホントに大丈夫なのか?とは思いますが……)

後は、SDKもNDKもデフォルトのモノを消し、
各サイトから最新のモノインストールしてパッケージ化した所、
NDK API Levelをandroid-26にしてもパッケージ化は成功しました。

fujiwara lily様



追記でのご回答ありがとうございます!

教えて頂いた設定をさっそく試させてもらったところ、こちらでもGoogleStoreに警告なく

アップロードすることができました!



ずっと行き詰まっていた部分だったので、助かりました。



海外のフォーラムでも同様に困ってる方がおられると思いますので
そちらは僕の方から情報の共有をしておきます。



ありがとうございました!