facebook twitter hatena line email

「Unity/実機/Android」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
行64: 行64:
 
  > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException:  
 
  > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException:  
 
  java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files
 
  java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files
multidexを追加するかライブラリ数を減らす
+
multidexを追加するかライブラリ数orライブラリメソッド数を減らす
  
 
==multidexのバージョンが存在しないと出たとき==
 
==multidexのバージョンが存在しないと出たとき==

2018年6月25日 (月) 12:06時点における版

Android実機で動かす

  • File/BuildSettingsを選択
  • Androidを選択
  • OpenDownloadPageからプレイヤーをDL
  • Unityを一度再起動
  • Unity/Preference/ExternalTools/Android/SDK・JDK・NDKのpathを入れる
SDK=/Users/[user]/Library/Android/sdk
JDK=/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/bin/java # 確認 $ locate jdk | grep bin/java$
NDK=/Users/[user]/Library/Android/sdk/ndk-bundle
  • PlayerSettingsを選択
  • Inspector/端末マーク/OtherSetting
  • Bundle Identifierの"com.company.ProjectName"を適宜変更する(デフォから変えないとbuild時にエラーとなる)
  • buildボタンを押しapkを作成する
  • build&runボタンを押しandroidで動作させる。
  • 縦向き・横向きで確認する

向きを固定

  • File/BuildSettings
  • OriantationをAutoRotationからportrait(縦)へ

ビルドエラー

Bundle Identifier has not been set up correctly

  • 上記のBundle Identifierがデフォルトの"com.company.ProjectName"だと起こるエラー。適宜変更する

NDK 13.1.3345770 is incompatible with IL2CPP. IL2CPP requires r10e (64-bit).エラーとなる場合

  1. NDK欄隣のDownloadボタンを押し、
  2. android-ndk-r10e-darwin-x86_64.binをDownload
  3. 適当な場所に移動し、NDKのpathへ入力する

Unable to list target platforms. Please make sure the android sdk path is correct. See the Console for details.エラーの場合

最新の Android Studio に付属している SDK Tools がまずいようなので、25バージョンを使うように

https://dl.google.com/android/repository/tools_r25.2.5-macosx.zip

Library/Android/sdk/toolsを差し替える

gradleで動かす方法

  1. file/build setting/build systemを"internal"から"gradle"にする

gradleでプロガード設定のないlibsを動かす方法

  1. file/build setting/build systemを"internal"から"gradle"にする
  2. file/build setting/PlayerSetting/PublisingSetting/minifyのreleaseを"progurad"から"none"に変更する

gradleのカスタムファイルを作る

  1. file/build setting/PlayerSetting/PublisingSetting/Build/CustomGradleTemplateにチェックを入れる
  2. Assets/Plugins/AndroidにmainTemplate.gradleができる

AndroidStudio用ファイルを出力する

  1. file/build setting/ExportProjectにチェックを入れる
  2. buildする

Cannot read packageName AndroidManifest.xmlエラーの場合

manifestにpackage名を登録する

<manifest package="jp.co.example.hogehoge"
以下略

AndroidManifest.xmlを作成する

  1. 一度ビルドするとTemp/StagingArea/AndroidManifest.xmlができる。
  2. それをAssets/Plugins/Androidの下にコピー

参考:https://qiita.com/peroon/items/ba55d583a68c58f0faa5

multidex必須と出たとき

Execution failed for task ':transformClassesWithDexForRelease'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: 
java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files

multidexを追加するかライブラリ数orライブラリメソッド数を減らす

multidexのバージョンが存在しないと出たとき

A problem occurred configuring root project 'gradleOut'.
> Could not resolve all dependencies for configuration ':_debugApkCopy'.
   > Could not find com.android.support:multidex:1.0.3.

multidexが適切にインストールされているか確認する

ls ~/Library/Android/sdk/extras/android/m2repository/com/android/support/multidex/1.0.3/multidex-1.0.3.jar

なければsdktoolのandroidSupportRegistryをアンインストールしてインストールする。