gpt4 book ai didi

android - 应用程序崩溃(有时)并出现致命信号 11 (SIGSEGV),代码 1

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:26:01 32 4
gpt4 key购买 nike

我正在使用 HERE SDK 开发应用程序,到目前为止一切正常。我收到这样的错误:
致命信号 11 (SIGSEGV),代码 1,tid 10206 (FinalizerDaemon) 中的故障地址 0x750057
或者这个:
致命信号 11 (SIGSEGV),代码 1,tid 24605 (FinalizerDaemon) 中的故障地址 0x94789680

它们让我的应用程序崩溃。

它并不总是相同的错误,但它们总是单独出现在我的 Logcat 中,没有其他信息。

在我所有的应用程序中,我都使用 HERE 对象和服务,即使通过打印堆栈跟踪,我也没有获得有关错误的更多信息。
我只是注意到这些错误几乎是随机出现的,但只有在我使用这些对象/服务时才会出现。

我使用真实设备测试我的应用程序,即 Sony Xperia Z3 compact,所以我认为它不是来自这里。

我真的迷路了,所以如果有人对如何获取有关错误的更多信息有任何想法,请帮忙

编辑:

 05-09 23:04:10.148 6770-6782/? A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x4 in tid 6782 (FinalizerDaemon)
05-09 23:04:10.266 30179-30179/? I/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
05-09 23:04:10.266 30179-30179/? I/DEBUG: UUID: 5569a1b9-c913-4101-99fa-5099e2cadd48
05-09 23:04:10.266 30179-30179/? I/DEBUG: Build fingerprint: 'Sony/D5803/D5803:5.1.1/23.4.A.1.264/2418263178:user/release-keys'
05-09 23:04:10.266 30179-30179/? I/DEBUG: Revision: '0'
05-09 23:04:10.266 30179-30179/? I/DEBUG: ABI: 'arm'
05-09 23:04:10.266 30179-30179/? I/DEBUG: pid: 6770, tid: 6782, name: FinalizerDaemon >>> com.david.metroz <<<
05-09 23:04:10.266 30179-30179/? I/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x4
05-09 23:04:10.294 30179-30179/? I/DEBUG: r0 98327400 r1 00000000 r2 00000002 r3 00000000
05-09 23:04:10.294 30179-30179/? I/DEBUG: r4 aec264c0 r5 b3df7acc r6 98327400 r7 73652348
05-09 23:04:10.294 30179-30179/? I/DEBUG: r8 6f9983a8 r9 b482a800 sl 12f1d820 fp b3df7abc
05-09 23:04:10.294 30179-30179/? I/DEBUG: ip b5303950 sp b3df7ab0 lr b510717f pc a0b7205c cpsr a00e0010
05-09 23:04:10.294 30179-30179/? I/DEBUG: #00 pc 000f405c /data/app/com.david.metroz-1/lib/arm/libMAPSJNI.so (Java_com_nokia_maps_GeoBoundingBoxImpl_destroyNative+76)
05-09 23:04:10.294 30179-30179/? I/DEBUG: #01 pc 001d7d4f /data/dalvik-cache/arm/data@app@com.david.metroz-1@base.apk@classes.dex
05-09 23:04:12.302 862-1274/? E/NativeCrashListener: Exception dealing with report
android.system.ErrnoException: read failed: EAGAIN (Try again)
at libcore.io.Posix.readBytes(Native Method)
at libcore.io.Posix.read(Posix.java:165)
at libcore.io.BlockGuardOs.read(BlockGuardOs.java:230)
at android.system.Os.read(Os.java:350)
at com.android.server.am.NativeCrashListener.consumeNativeCrashData(NativeCrashListener.java:240)
at com.android.server.am.NativeCrashListener.run(NativeCrashListener.java:138)

编辑 2: 我现在非常确定当我使用 gson 从数据库中检索 HERE 对象时会发生崩溃。

当一切都在同一个应用程序运行时完成时,下面的代码有效,但是当我在数据库中保存一个字符串,关闭应用程序然后重新打开它时,我得到了 Fatal signal 而将 json 字符串 转换回对象。

// to insert I create a json string and then insert it in the database
String mGbSortie = gson.toJson(geoboundinBox);

//and then to retrieve the data :
Type gbType = new TypeToken<GeoBoundingBox>(){}.getType();
geoBoudingBox = gson.fromJson(stringFromDb, listType)

我真的不知道为什么它不起作用。

最佳答案

1) 首先判断是android、第三方库的bug,还是自己设备的bug,这样才能知道该往哪走。

This answer给出了如何做到这一点的解决方案:

If you have written (or are using) a plugin that in turn uses native C/C++ code through the NDK, this may indicate a bug in that native code.

Otherwise, this is a bug in the firmware of the device or emulator you are testing upon.

If you can reproduce this in an emulator, on a Nexus device with the original ROM, or on a variety of devices from different manufacturers, it is probably a bug in Android itself. In that case, please create a sample project that can reproduce the error, and post it along with the entire stack trace to http://b.android.com, the Android OS issue tracker.

If you are only encountering this on one device or one third-party ROM, it is probably a more specific bug -- your best bet is to contact the device manufacturer or ROM publisher with your symptoms.

这两个问题详细讨论了您收到的错误:

Android Fatal signal 11 (SIGSEGV) at 0x636f7d89 (code=1). How can it be tracked down?

Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1) - PhoneGap

2) 在解析地理边界值方面(看起来可能是问题所在),请确保您使用正确的地理边界值正确处理 Gson 和 Json 之间的解析。您存储这些值的方式似乎与您检索它们的方式不一致。

From Mykong :

toJson() – Convert Java object to JSON

Gson gson = new Gson();
Staff obj = new Staff();

// 1. Java object to JSON, and save into a file
gson.toJson(obj, new FileWriter("D:\\file.json"));

// 2. Java object to JSON, and assign to a String
String jsonInString = gson.toJson(obj);

fromJson() – Convert JSON to Java object

Gson gson = new Gson();

// 1. JSON to Java object, read it from a file.
Staff staff = gson.fromJson(new FileReader("D:\\file.json"), Staff.class);

// 2. JSON to Java object, read it from a Json String.
String jsonInString = "{'name' : 'mkyong'}";
Staff staff = gson.fromJson(jsonInString, Staff.class);

// JSON to JsonElement, convert to String later.
JsonElement json = gson.fromJson(new FileReader("D:\\file.json"), JsonElement.class);
String result = gson.toJson(json);

来自 this answer :

public class YourObject {
private String appname;
private String Version;
private String UUID;
private String WWXY;
private String ABCD;
private String YUDE;
//getters/setters


YourObject parsed = new Gson().fromJson(jsons, YourObject.class);

String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'270B', 'YUDE':'280T'}";
YourObject parsed = new Gson().fromJson(jsons, YourObject.class);

JsonObject object = new JsonParser().parse(jsons).getAsJsonObject();
object.get("appname"); // application
object.get("Version"); // 0.1.0

这些 SO 问题提供了更多细节:
How to parse json parsing Using GSON in android
parse JSON with gson and GsonBuilder()

3) 确保您为地理边界坐标传递了正确的值。这个问题Value does not fall within the expected range GeoboundingBox WinRT (尽管 C# 提供了一个很好的示例,说明如何分解您尝试存储和检索的信息组件。

The answer很简单。

var nw = new BasicGeoposition();
nw.Latitude = Max(pos.Coordinate.Latitude, pos2.lat);
nw.Longitude = Min(pos.Coordinate.Longitude, pos2.lng);
var se = new BasicGeoposition();
se.Latitude = Min(pos.Coordinate.Latitude, pos2.lat);
se.Longitude = Max(pos.Coordinate.Longitude, pos2.lng);

并了解如何使用 gson 解析您的 json:

Use Gson to work with JSON in your Android apps

还有this gihub repo供您浏览更多创意。

关于android - 应用程序崩溃(有时)并出现致命信号 11 (SIGSEGV),代码 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37101603/

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