Загадочные сбои в Google Play Core lib при использовании отзывов в приложении? (неправильные номера строк, неправильные Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Загадочные сбои в Google Play Core lib при использовании отзывов в приложении? (неправильные номера строк, неправильные

Сообщение Anonymous »

У меня возникла загадочная ошибка в библиотеке Google Play после внедрения проверок в приложении, и это не имеет смысла. Это отчет о сбое из консоли:

Код: Выделить всё

java.lang.RuntimeException:
at android.app.ActivityThread.performResumeActivity (ActivityThread.java:3790)
at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3830)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3038)
at android.app.ActivityThread.-wrap11 (Unknown Source)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1696)
at android.os.Handler.dispatchMessage (Handler.java:105)
at android.os.Looper.loop (Looper.java:164)
at android.app.ActivityThread.main (ActivityThread.java:6944)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)
Caused by: java.lang.IllegalArgumentException:
at android.os.Parcel.readException (Parcel.java:1971)
at android.os.Parcel.readException (Parcel.java:1913)
at android.content.pm.IPackageManager$Stub$Proxy.setComponentEnabledSetting (IPackageManager.java:5720)
at android.app.ApplicationPackageManager.setComponentEnabledSetting (ApplicationPackageManager.java:2912)
at com.google.android.play.core.internal.bh.h (bh.java:80)
at com.google.android.play.core.common.PlayCoreDialogWrapperActivity.a (PlayCoreDialogWrapperActivity.java:16)
at com.google.android.play.core.review.ReviewManagerFactory.create (ReviewManagerFactory.java)
at com.myapp.mypackage.SettingsActivity.onResume (SettingsActivity.java:11)
at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1361)
at android.app.Activity.performResume (Activity.java:7415)
at android.app.ActivityThread.performResumeActivity (ActivityThread.java:3765)
at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:3830)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3038)
at android.app.ActivityThread.-wrap11 (Unknown Source)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:1696)
at android.os.Handler.dispatchMessage (Handler.java:105)
at android.os.Looper.loop (Looper.java:164)
at android.app.ActivityThread.main (ActivityThread.java:6944)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run (Zygote.java:327)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1374)
Проблемы:
  • Нет класса с именем com.google.android.play.core.internal.bh. ч. Почему его не деобфусцировали? Я загрузил правильный файл Mapping.txt
  • В нем говорится, что сбой произошел в строке 11 метода onResume в моем классе com.myapp.mypackage.SettingsActivity.onResume. Это неверно, в строке 11 кода нет, просто импорт...

    Код: Выделить всё

    onResume
    в моей деятельности находится где-то на 100+ строке. Почему в отчете о сбое отображаются случайные неправильные строки?
  • Я также пытался изучить класс com.google.android.play.core.common.PlayCoreDialogWrapperActivity.a (PlayCoreDialogWrapperActivity.java:16) но еще раз - в строке 16 ничего нет, только импорт
Мой код (практически просто копипаст с официального Google Docs) - видимо где-то здесь вылетает, но я не знаю на какой строке и почему происходит вылет, так как в отчете о сбое указаны неправильные номера строк:

Код: Выделить всё

ReviewManagerFactory reviewManager = ReviewManagerFactory.create(context);
Task request = reviewManager.requestReviewFlow();
request.addOnCompleteListener(new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task) {
// 1. everything ok => we show in-app review sheet at the bottom
if (task.isSuccessful()) {
// We can get the ReviewInfo object
ReviewInfo reviewInfo = task.getResult();
Task flow = reviewManager.launchReviewFlow((Activity) context, reviewInfo);
flow.addOnCompleteListener(task1 -> {
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown.  Thus, no
// matter the result, we continue our app flow.
}).addOnFailureListener(task2 -> {
// nothing
});
}
}
});
Как на самом деле решать подобные отчеты о сбоях, когда имена классов или строки не имеют никакого смысла?
Нужно ли мне добавлять несколько строк в proguard?
Есть какие-нибудь советы, подсказки или советы, как бороться с такими отчетами о сбоях? Спасибо

Подробнее здесь: https://stackoverflow.com/questions/680 ... -wrong-lin
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»