Я не могу понять, как происходит утечка памяти в моем приложении. У меня есть простой код, который воспроизводит ошибку следующим образом:
В MainActivity
. Я создаю экземпляр календаря и обновляю миллисекунды в TextView
private lateinit var calendar: Calendar
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Example of a call to a native method
sample_text.text = stringFromJNI()
statBtn.setOnClickListener{
calendar = GregorianCalendar.getInstance()
sample_text.text = calendar.timeInMillis.toString()
}
}
Когда я запускаю приложение, просто нажмите statBtn
, приложение работает нормально (я вижу время обновления в TextView). Однако logcat сообщает следующее
I/zygote64: Do partial code cache collection, code=24KB, data=26KB
I/zygote64: After code cache collection, code=24KB, data=26KB
I/zygote64: Increasing code cache capacity to 128KB
I/zygote64: Do partial code cache collection, code=57KB, data=54KB
I/zygote64: After code cache collection, code=57KB, data=54KB
I/zygote64: Increasing code cache capacity to 256KB
EDIT
Этот код тоже пропускает:
package com.example.blabla.d344
import android.os.AsyncTask
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import kotlinx.android.synthetic.main.activity_main.*
import java.util.*
class MainActivity : AppCompatActivity() {
private val TAG = "Main Activity"
//private lateinit var task: LongTask
private var idx=0
private lateinit var calendar: Calendar
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Example of a call to a native method
sample_text.text = stringFromJNI()
calendar = GregorianCalendar.getInstance()
statBtn.setOnClickListener{
//sample_text.text = calendar.timeInMillis.toString()
}
}
/**
* A native method that is implemented by the 'native-lib' native library,
* which is packaged with this application.
*/
external fun stringFromJNI(): String
companion object {
// Used to load the 'native-lib' library on application startup.
init {
System.loadLibrary("native-lib")
}
}
}