-1

Unity で非常に単純なモバイル F2P アーケード ゲームを作成しています。facebook、gamesparks、firebase、および appodeal の SDK を追加した後、ビルドできず、「メソッド参照が多すぎます: 76221; 最大値は 65536」というエラーが表示されます。

フィールド参照が多すぎるからの解決策: 70613; max is 65536はどうやらADTプロジェクトをエクスポートし、それをAndroidスタジオにインポートしてそこから移動することです。

私はこれらの指示に従ってビルドしましたが、Android スタジオ プロジェクトをビルドした後、Facebook SDK に関連するエラーが発生しました: Unity exporting android project with Facebook SDK issue

.aarそこで提案された解決策は、Unity プロジェクトからファイルへのすべてを Android Studio プロジェクトにコピーし、それらを参照する build.gradle ファイルに行を追加することです。

すべてを行った後、4 つの Facebook 関連のエラーはなくなりましたが、新しいエラーが 1 つ表示されます。

エラー: パッケージ名が「android.support.v7.appcompat」のライブラリが複数あります

そのための提案された解決策は、問題のあるファイルを検索して Windows エクスプローラーで削除することですが、私の Android スタジオ プロジェクト フォルダーにはその名前のものがありません。.aar名前に appcompat を含むいくつかのファイルを削除しようとしましたが、最終的に前の 4 つの facebook エラーに戻りました

4 つの Facebook エラーまたは「複数のライブラリ」エラーのいずれかが発生する可能性があります。

これが私のbuild.gradleファイルの外観です..

    apply plugin: 'com.android.application'

    android {
        compileSdkVersion 25
        buildToolsVersion "25.0.3"

        defaultConfig {
            applicationId "com.ARTEFICER.fruitfall"
            minSdkVersion 16
            targetSdkVersion 25
        }

        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            }
        }
    }

    dependencies {
        compile(name: 'animated-vector-drawable-23.4.0', ext: 'aar')
        compile(name: 'appcompat-v7-23.4.0', ext: 'aar')
        compile(name: 'cardview-v7-23.4.0', ext: 'aar')
        compile(name: 'customtabs-23.4.0', ext: 'aar')
        compile(name: 'facebook-android-sdk-4.17.0', ext: 'aar')
        compile(name: 'facebook-android-wrapper-7.9.4', ext: 'aar')
        compile(name: 'firebase-app-unity-3.0.3', ext: 'aar')
        compile(name: 'firebase-common-10.2.6', ext: 'aar')
        compile(name: 'firebase-iid-10.2.6', ext: 'aar')
        compile(name: 'firebase-messaging-10.2.6', ext: 'aar')
        compile(name: 'firebase-messaging-unity-3.0.3', ext: 'aar')
        compile(name: 'play-services-ads-10.2.6', ext: 'aar')
        compile(name: 'play-services-ads-lite-10.2.6', ext: 'aar')
        compile(name: 'play-services-base-10.2.6', ext: 'aar')
        compile(name: 'play-services-basement-10.2.6', ext: 'aar')
        compile(name: 'play-services-clearcut-10.2.6', ext: 'aar')
        compile(name: 'play-services-gass-10.2.6', ext: 'aar')
        compile(name: 'play-services-location-10.2.6', ext: 'aar')
        compile(name: 'play-services-tasks-10.2.6', ext: 'aar')
        compile(name: 'support-compat-25.2.0', ext: 'aar')
        compile(name: 'support-core-ui-25.2.0', ext: 'aar')
        compile(name: 'support-core-utils-25.2.0', ext: 'aar')
        compile(name: 'support-fragment-25.2.0', ext: 'aar')
        compile(name: 'support-media-compat-25.2.0', ext: 'aar')
        compile(name: 'support-v4-25.2.0', ext: 'aar')
        compile(name: 'support-vector-drawable-23.4.0', ext: 'aar')
        compile project(':animatedvectordrawable2340')
        compile project(':cardviewv72340')
        compile project(':cheetahmobile')
        compile project(':customtabs2340')
        compile project(':facebookandroidsdk4170')
        compile project(':facebookandroidwrapper794')
        compile project(':firebase')
        compile project(':firebaseappunity303')
        compile project(':firebasecommon1026')
        compile project(':firebaseiid1026')
        compile project(':firebasemessaging1026')
        compile project(':firebasemessagingunity303')
        compile project(':playservicesads1026')
        compile project(':playservicesadslite1026')
        compile project(':playservicesbase1026')
        compile project(':playservicesclearcut1026')
        compile project(':playservicesgass1026')
        compile project(':playserviceslocation1026')
        compile project(':playservicestasks1026')
        compile project(':supportcompat2520')
        compile project(':supportcoreui2520')
        compile project(':supportcoreutils2520')
        compile project(':supportfragment2520')
        compile project(':supportmediacompat2520')
        compile project(':supportv42520')
        compile project(':supportvectordrawable2340')
        compile 'com.google.android.gms:play-services:+'
        compile 'com.android.support:appcompat-v7:25.3.1'
        compile files('libs/applovin-6.3.0.jar')
        compile files('libs/appodeal-1.15.9.jar')
        compile files('libs/bolts-android-1.4.0.jar')
        compile files('libs/bolts-applinks-1.4.0.jar')
        compile files('libs/bolts-tasks-1.4.0.jar')
        compile files('libs/chartboost-6.6.1.jar')
        compile files('libs/flurry-analytics-6.5.0.jar')
        compile files('libs/libmessaging_unity_player_activity.jar')
        compile files('libs/my-target-4.5.10.jar')
        compile files('libs/support-annotations-25.2.0.jar')
        compile files('libs/unity-ads-2.0.4.jar')
        compile files('libs/unity-classes.jar')
        compile files('libs/yandex-metrica-2.62.jar')
    }

    allprojects {
       repositories {
          jcenter()

          flatDir {
            dirs 'libs'
          }
       }
    }

これらの行をコメントアウトしてみました。

compile 'com.android.support:appcompat-v7:25.3.1'

compile project(':supportcompat2520')

compile(name: 'support-compat-25.2.0', ext: 'aar')

しかし、まだ「パッケージ名を持つ複数のライブラリ」エラーがあります

また、私は Unity 開発者です。私は数日前まで Android Studio を開いたことがありません。

4

2 に答える 2

1

ADT は非推奨です。Unity の最新バージョンは gradle をサポートしています。Android プロジェクトを生成する場合は、Gradle(New) オプションでビルドし、Android Studio でプロジェクトを開きます。ADT(Legacy) オプションでビルドしないでください。これにより、適切なファイルが生成され、エラーが解消されるか、エラーが減少する可能性があります。

ここに画像の説明を入力

于 2017-05-23T14:48:31.790 に答える