Kotlin 未注册在Android中使用VisualStudio AppCenter发送指标
我正在构建一个应用程序,我们想做的一件事是检查有多少用户没有订购任何物品(他们打开并关闭应用程序)。我尝试了两种方法来实现这一点:Kotlin 未注册在Android中使用VisualStudio AppCenter发送指标,kotlin,service,visual-studio-app-center,Kotlin,Service,Visual Studio App Center,我正在构建一个应用程序,我们想做的一件事是检查有多少用户没有订购任何物品(他们打开并关闭应用程序)。我尝试了两种方法来实现这一点: 我已经创建了一个服务并覆盖了onTaskRemoved,该服务工作正常,在onTaskRemoved方法中时会提示我一个日志,不幸的是,由于某种原因,我无法在AppCenter中看到这个新指标。我可以在网站上看到这一指标正在发挥作用 我还尝试在活动的onDestroy中发送此度量,但结果相同(它不发送任何内容) 我已经在应用程序中放置的其他指标都可以正常工作 这是我
class RemoveTaskService : Service() {
private var isLead : String? = null
companion object{
const val IS_LEAD_KEY = "IS_LEAD_KEY"
}
override fun onBind(intent: Intent?): IBinder? { return null }
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
isLead = if(intent !=null && intent.hasExtra(IS_LEAD_KEY)) intent.getStringExtra(IS_LEAD_KEY) else "0"
val properties = HashMap<String, String>()
properties["USER_TYPE"] = if (isLead == "0") "Invited User" else "Regular User"
Analytics.trackEvent("JUST_A_TEST_IGNORE", properties)
return START_NOT_STICKY
}
override fun onTaskRemoved(rootIntent: Intent?) {
// super.onTaskRemoved(rootIntent)
val get : Boolean = Analytics.isEnabled().get()
val done : Boolean = Analytics.isEnabled().isDone
Log.d("testapp","get=$get done=$done")
val properties = HashMap<String, String>()
properties["USER_TYPE"] = if (isLead == "0") "Invited User" else "Regular User"
Analytics.trackEvent("ORDER_NOT_COMPLETED", properties)
}
我也试过带或不带
super.onTaskRemoved(rootIntent)
但是没有任何运气
--编辑--
在我听从伊凡的建议后
AppCenter.setLogLevel(Log.VERBOSE)
在我的代码中,我注意到以下日志:
D/AppCenter: Storing a log to the Persistence database for log type event with flags=1
是否有方法发送日志而不是存储日志?检查本故障排除指南中的内容:如果仍然如此,请打开支持票证(打开App Center门户右上角的帮助菜单:?>联系支持部门)并附加SDK详细日志。感谢您的建议,我认为日志存储在设备上,而不是发送到后端,是否有方法发送它?是的,设备日志不是通过网络共享的,您可以与支持人员手动共享。BTW日志总是在发送前存储(以处理网络错误、应用程序崩溃等)
D/AppCenter: Storing a log to the Persistence database for log type event with flags=1