我正在尝试使用Google Analytics Java API将我的网页的Google Analytics跟踪数据提取到我的scalajs计划中。我试图按照其文档并尝试以下代码:
导入声明:
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential
import com.google.api.client.http.javanet.NetHttpTransport
import com.google.api.client.json.jackson2.JacksonFactory
import com.google.api.services.analytics.{Analytics, AnalyticsScopes}
,代码是:
def gaTracker():Unit= {
val HTTP_TRANSPORT=new NetHttpTransport()
val JSON_FACTORY=new JacksonFactory()
val file = new File("/home/ishan/IdeaProjects/client_secret.json")
val apiEmail = "abc@developer.gserviceaccount.com"
val analyticsPrivateKeyFile: String = "/home/ishan/IdeaProjects/client_secret.p12"
val credential: GoogleCredential = new GoogleCredential.Builder()
.setTransport(HTTP_TRANSPORT)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(apiEmail)
.setServiceAccountPrivateKeyFromP12File(new File(analyticsPrivateKeyFile))
.setServiceAccountScopes(AnalyticsScopes.all())
.build()
val analyticsService= new Analytics.Builder(HTTP_TRANSPORT,JSON_FACTORY,credential).setApplicationName("tracker").build()
val startDate:String="2016-01-12"
val endDate:String="2016-15-12"
val metrics:String="ga:sessions,ga:timeOnPage"
val get=analyticsService.data().ga().get("ga:xxxxxx111",startDate,endDate,metrics)
val data=get.execute()
if (data.getRows()!=null){
println("Fetched")
}
else{
println("Not Fetched")
}
}
我在build.sbt文件中添加了依赖项:
libraryDependencies += "com.google.apis" % "google-api-services-analytics" % "v3-rev136-1.22.0"
但它显示错误:
Referring to non-existent class com.google.api.client.json.jackson2.JacksonFactory
Referring to non-existent class com.google.api.client.http.javanet.NetHttpTransport
我尝试添加以下依赖项,但没有改变:
libraryDependencies+="com.google.http-client" % "google-http-client-jackson" % "1.18.0-rc"
有人可以从这里引导我吗?提前致谢。