gpt4 book ai didi

android - 跟踪发布前报告中报告的错误 - java.lang.NullPointerException - android.accounts.Account

转载 作者:行者123 更新时间:2023-12-04 23:37:36 31 4
gpt4 key购买 nike

我最近在 Play 商店中更新了我的第一个 android 应用程序,并且发布前报告报告了特定设备上的一个错误。提供的堆栈跟踪如下:

FATAL EXCEPTION: main
Process: com.google.android.gm, PID: 9714
java.lang.NullPointerException: Attempt to invoke virtual method 'android.accounts.Account com.android.mail.providers.Account.b()' on a null object reference
at dgg.Z(PG:3)
at dgg.onPrepareOptionsMenu(PG:6)
at com.google.android.gm.ComposeActivityGmail.onPrepareOptionsMenu(PG:1)
at android.app.Activity.onPreparePanel(Activity.java:4137)
at gn.onPreparePanel(PG:2)
at vz.onPreparePanel(Unknown Source:2)
at tm.onPreparePanel(PG:3)
at tv.a(PG:192)
at tv.f(PG:7)
at tc.run(PG:2)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:8016)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1076)
问题是我希望在上面的跟踪中看到我的一个文件和一个行号,但没有,所以我不确定如何追踪这个错误的原因。
跟踪提到“ComposeActivityGmail”。我的应用程序中唯一与 Gmail 有任何关系的地方是我的设置菜单中的一个选项,它使用以下代码启动“发送电子邮件” Intent ,所以我猜错误在这里的某个地方。
public class SettingsMenuFragment extends PreferenceFragmentCompat {
@Override
public void onCreatePreferences(Bundle bundle, String s) {

addPreferencesFromResource(R.xml.app_preferences);
Preference feedbackPreference = findPreference("keyFeedback");

Objects.requireNonNull(feedbackPreference).setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {

Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:")); // only email apps should handle this
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"fakeemail@gmail.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "Fake Feedback");
if (intent.resolveActivity(requireActivity().getPackageManager()) != null) {
startActivity(intent);
}
return true;
}
});
有没有人对如何更好地理解堆栈跟踪有任何建议,或者以下代码 fragment 中可能有什么问题?
更新
因此,在发布前报告中遇到问题的设备是三星。我自己采购了一台三星设备并设法重现了这个问题。当我单击反馈首选项时,电子邮件客户端选择弹出窗口打开,但我的应用程序死了。然后我将手机插入我的笔记本电脑并在 android studio 中以 Debug模式运行相同的代码库,但它运行良好。再次从 Play 商店安装了该应用程序(仍然与以前的版本相同),现在它可以正常工作了。如此迷茫!

最佳答案

没有办法解决这个问题。
我认为这只是旧版本的 Gmail 应用程序的问题,并且在当前版本上已解决。
如果用户更新 Gmail 应用程序,错误将不会重现。
我成功重现了这个异常。
我有一部 Android 10 三星智能手机。我重置了手机并尝试从我的应用程序启动 Gmail。那个时候问题就出现了。
Gmail 版本为 2019.11.21.283644823.release
更新 Gmail 应用程序后,该问题不再出现。

关于android - 跟踪发布前报告中报告的错误 - java.lang.NullPointerException - android.accounts.Account,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65926400/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com