Ad
16: 2018-10-04 (木) 03:35:37 njf ソース バックアップ No.16 を復元して編集 現: 2018-10-08 (月) 03:00:42 njf ソース 編集
Line 120: Line 120:
       compileSdkVersion 24        compileSdkVersion 24
       buildToolsVersion "24.0.0"        buildToolsVersion "24.0.0"
 + 
       defaultConfig {        defaultConfig {
           applicationId "jp.njf.MyGame"            applicationId "jp.njf.MyGame"
           minSdkVersion.apiLevel 10            minSdkVersion.apiLevel 10
           targetSdkVersion.apiLevel 22            targetSdkVersion.apiLevel 22
 + 
           ndk {            ndk {
               moduleName "game_shared"                moduleName "game_shared"
           }            }
       }        }
 + 
       buildTypes {        buildTypes {
           release {            release {
Line 147: Line 147:
 apply plugin: 'com.android.model.library'  apply plugin: 'com.android.model.library'
 + 
 buildscript {  buildscript {
     repositories {      repositories {
         jcenter()          jcenter()
     }      }
 + 
     dependencies {      dependencies {
         classpath 'com.android.tools.build:gradle:1.3.1'          classpath 'com.android.tools.build:gradle:1.3.1'
     }      }
 }  }
 + 
 dependencies {  dependencies {
     compile 'com.google.android.gms:play-services-plus:9.+'      compile 'com.google.android.gms:play-services-plus:9.+'
Line 186: Line 186:
%%このとき、後述のCocos2dxBitmapでのエラーを避けるため、リリースするAPIのバージョンは21以下にするのがおすすめです。%% %%このとき、後述のCocos2dxBitmapでのエラーを避けるため、リリースするAPIのバージョンは21以下にするのがおすすめです。%%
-規約の変更などにより、APIレベルを低くしてリリースするのが難しくなってきているので、以下の方法をおすすめします。+規約の変更や広告SDKなど外部ライブラリの都合などにより、APIレベルを低くしてリリースするのが難しくなってきているので、ソースをプロジェクト内にコピーしたり、モジュールとして取り込むのをおすすめします。 
-ソースをプロジェクト内にコピーしたり、モジュールとして取り込みます。 
%%一方、jarファイルの方が一つjarを作るプロジェクトを作っておくと、そのjarを使い回せるのでいっせいに変更するのはそちらの方が楽です。またコンパイル時間も短くなります。%% %%一方、jarファイルの方が一つjarを作るプロジェクトを作っておくと、そのjarを使い回せるのでいっせいに変更するのはそちらの方が楽です。またコンパイル時間も短くなります。%%
Line 207: Line 207:
%%BaseGameUtilsの中のAndroidManifest.xmlにuses-sdkがないために起こるので、ゲーム本体のAndroidManifest.xmlのuses-sdk句をコピーしてBaseGameUtilsのものに貼り付けると解決します。%% %%BaseGameUtilsの中のAndroidManifest.xmlにuses-sdkがないために起こるので、ゲーム本体のAndroidManifest.xmlのuses-sdk句をコピーしてBaseGameUtilsのものに貼り付けると解決します。%%
-現在ではManifestにsdkのバージョンを入れること自体が推奨されていないので、マニフェストから取り除けばOKです。(2018.10.4追記)+現在ではManifestにSDKのバージョンを入れること自体が推奨されていないので、マニフェストからSDKのバージョンを入れてgradleファイルのSDKを上げればOKです。(2018.10.4追記)
** Cocos2dxBitmapクラスのFloatMathでエラー [#n019b611] ** Cocos2dxBitmapクラスのFloatMathでエラー [#n019b611]
-API level 22よりdeprecatedになったので、FloatMathをMathに置きかえてください。%%またはAPI 21以下でリリースしてください。%% 低いAPI levelではリリースできなくなってきているので、書きかえる方が無難です。(2018.10.4追記)。+API level 22よりdeprecatedになったので、FloatMathをMathに置きかえてください。%%またはAPI 21以下でリリースしてください。%% 外部ライブラリのなどの都合により、低いAPI levelではリリースしづらくなってきているので、書きかえる方が無難です。(2018.10.4追記)。
**HttpClientのエラー [#k5f1e689] **HttpClientのエラー [#k5f1e689]
Line 230: Line 230:
古いBaseGameUtilsを使っていると、Google Play Serviceを新しくしたときにエラーとなります。BaseGameUtils関連のjavaファイルとManifest、resフォルダなどを新しい物に入れ替えるとうまくいきます。 古いBaseGameUtilsを使っていると、Google Play Serviceを新しくしたときにエラーとなります。BaseGameUtils関連のjavaファイルとManifest、resフォルダなどを新しい物に入れ替えるとうまくいきます。
 +
 +**android.permission.READ_PHONE_STATEのパーミッションが付け加わる [#ga4337af]
 +
 +android.permission.READ_PHONE_STATEのパーミッションがあるから、プライバシーポリシー追加しないといけない、とGoogle Playへアップロード時に言われることがあります。
 +
 +これは、gradleファイルでminSdkVersionやtargetSdkVersionを指定しないと、デフォルトで1が適用されるため、古いAndroid端末での互換性を保つため勝手にパーミッションが付け加わるためらしいです。
 +
 +よって、このエラーが発生したときは、全てのgradleファイルにSDKのバージョンが正しく定義されているかをチェックしてください。ライブラリのどれかで入れ忘れている可能性があります。
*Google Play Serviceについての注意 [#ye37b112] *Google Play Serviceについての注意 [#ye37b112]


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード印刷に適した表示   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom Powered by xpWiki
Counter: 5563, today: 1, yesterday: 0
MenuBar
広告

ログイン

ユーザー名:


パスワード:





パスワード紛失

Portuguese | English | German | Greek | Japanese | Korean | Russian | T-Chinese top
NJF