在Android LibGDX游戏屏幕中实现Google Analytics

4
我在实现LibGDX游戏应用的Google Analytics时遇到了问题。我想跟踪游戏屏幕,但是Google Analytics只能在Gradle项目的android文件夹部分中工作。在核心部分中,它无法获取游戏屏幕类的上下文,尽管我也将libGoogleAnalyticsServices.jar添加到了核心文件夹中。
我已经在互联网上搜索了解决方案,但没有任何结果,所以我无法在项目的核心部分初始化Google Analytics。
以下是我尝试初始化Google Analytics的代码片段:
GoogleAnalytics GA = GoogleAnalytics.getInstance();

我遇到了这个错误:“The type android.content.Context cannot be resolved. It is indirectly referenced from required .class files”

我应该在Core项目中使用Android项目的libGoogleAnalyticsServices.jar文件,还是应该使用另一个jar文件来完成此任务?

以下是一些关于此问题的信息链接。

Google Event Tracker v3 https://developers.google.com/analytics/devguides/collection/android/v3/migration http://badlogicgames.com/forum/viewtopic.php?f=11&t=4298

任何关于这个具体问题的答案都将非常有用。提前谢谢。

2个回答

7

您应该仅在Android项目中使用Google Analytics sdk,而不是在核心项目中使用。核心项目中应该只包含与平台无关的代码。不要将Android库导入核心项目。

如果您想在核心项目中跟踪屏幕视图,则可以使用接口来实现。这里有一个wiki guide for interfacing libgdx

用于跟踪屏幕视图的接口可能类似于以下内容:

public interface Trackable {
   public void trackScreen(String screenName);
}

在您的Android项目中,此方法将实现Google Analytics跟踪代码。

2
如果您使用Intellij / Gradle项目,请按以下方式将Google Play服务添加到您的项目中:
  1. Add the google play services dependency to the gradle file in your android project. (Before this you should get the latest version from SDK Manager)

    dependencies { compile 'com.google.android.gms:play-services:6.5.87' }

  2. Add Internet and Network State permissions to your manifest file.

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    
  3. Change min sdk to 9 in your manifest file.

    <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="21" />

现在你需要将GA添加到你的游戏中,你可以按照这里的步骤进行操作:http://pygmalion.nitri.de/google-analytics-sdk-v4-with-libgdx-536.html 或者在GA的官网上查找相关信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接