Вот ваша проблема:
Я / Хореограф: пропущено 382 кадра! Приложение может выполнять слишком много работы над своим основным потоком.
Вы можете проверить этот ответ: Приложение может выполнять слишком много работы над своим основным потоком
Так что вам нужно поместить свой код в другой поток. Вы можете использовать AsyncTask, Threads, Handlers, Executors или множество других инструментов. Чтобы проверить это, попробуйте
new Thread(new Runnable() {
@Override
public void run() {
//put your code here
}
}).start();
Что касается второй проблемы с регистратором: если она будет существовать в будущем, добавьте это в приложение gradle:
implementation 'log4j:log4j:1.2.17'
implementation 'de.mindpipe.android:android-logging-log4j:1.0.3'
Создать класс регистратора:
class Logger {
static org.apache.log4j.Logger getLogger(Class clazz) {
final LogConfigurator logConfigurator = new LogConfigurator();
logConfigurator.setFileName(Environment.getExternalStorageDirectory().toString() + File.separator + "log/file.log");
logConfigurator.setRootLevel(Level.ALL);
logConfigurator.setLevel("org.apache", Level.ALL);
logConfigurator.setUseFileAppender(true);
logConfigurator.setFilePattern("%d %-5p [%c{2}]-[%L] %m%n");
logConfigurator.setMaxFileSize(1024 * 1024 * 5);
logConfigurator.setImmediateFlush(true);
logConfigurator.configure();
Logger log = Logger.getLogger(clazz);
return log;
}
}
И перед созданием azure клиента добавьте:
ALogger.getLogger("YOUR_CLASS_NAME".class);