-1

我将我的 Android Studio 更新到 2.3.2,之后 gradle 构建失败并出现以下错误:

error: incompatible types: Application cannot be converted to AnalyticsApplication.

我试过搜索它,但找不到任何相关的东西。

build.gradle 文件:

android {
  compileSdkVersion 25
  buildToolsVersion "25.0.2"

defaultConfig {
    applicationId "com.xxx.xxx"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 17
    versionName "1.6.7"
    multiDexEnabled true
}

我在这里遇到错误,

        // Obtain the shared Tracker instance.
        AnalyticsApplication application = (AnalyticsApplication) getApplication();
        mTracker = application.getDefaultTracker();

        sharedPrefs = PreferenceManager
                .getDefaultSharedPreferences(context);
        sharedPrefsEditor = sharedPrefs.edit();

        defineFields();

    } catch (Exception e) {
        e.printStackTrace();
    }

分析应用程序.java:

import android.app.Application;
import android.support.multidex.MultiDexApplication;

import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.Tracker;

 /**
 * This is a subclass of {@link Application} used to provide shared          objects for this app, such as the {@link Tracker}.*/
    public class AnalyticsApplication extends MultiDexApplication {
    private Tracker mTracker;

    /**
     * Gets the default {@link Tracker} for this {@link Application}.
     * @return tracker
     */
    synchronized public Tracker getDefaultTracker() {
    if (mTracker == null) {
        GoogleAnalytics analytics = GoogleAnalytics.getInstance(this);
        // To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG
        mTracker = analytics.newTracker(R.xml.global_tracker);
     }
        return mTracker;
    }
}
4

1 回答 1

1

我可以看到你已经使用

import android.support.multidex.MultiDexApplication;

正如您特别提到的将工作室版本更新到 2.3,我建议您在升级到 Android Studio 2.3 后查看获取“包 android.support.multidex 不存在”

我不太确定,但这可能是您问题的解决方案,因为我自己在工作室升级后遇到了类似的问题。希望它可以帮助你。

于 2017-06-06T10:32:25.673 回答