相关疑难解决方法(0)

Android致命信号11(SIGSEGV)位于0x636f7d89(代码= 1).如何追踪?

我一直在阅读有关追踪SIGSEGVAndroid应用程序的原因的其他帖子.我打算在我的应用程序中搜索与Canvas使用相关的可能的NullPointers,但我的SIGSEGVbarf每次都有不同的内存地址.另外我见过code=1code=2.如果内存地址是0x00000000,我有一个线索它是一个NullPointer.

我得到的最后一个是code=2:

A/libc(4969): Fatal signal 11 (SIGSEGV) at 0x42a637d9 (code=2)
Run Code Online (Sandbox Code Playgroud)

有关如何追踪此问题的任何建议?

我有一个嫌疑人,但我还没有热衷于尝试它.我的应用程序使用OSMDroid API进行离线映射.OverlayItem类表示地图上的标记/节点.我有一个服务,它通过网络收集数据以填充OverlayItem,然后显示在地图上.为了简化我的设计,我将OverlayItem扩展到我自己的NodeOverlayItem类中,该类包含我在UI Activity和Service中使用的一些附加属性.这给了我UI和服务的单点项目信息.我使用Intents广播到Activity,以便在更改内容时刷新UI映射.Activity绑定到Service,并且有一个Service方法来获取NodeOverlayItem的列表.我认为可能是OSMDroid API使用OverlayItem,而我的服务同时更新节点信息.(并发问题)

在我写这篇文章时,我认为这确实是问题所在.令人头疼的是没有从NodeOverlayItem拆分Node和OverlayItem,而是Activity需要来自Node的一些数据,服务保存.另外,当创建Activity(onResume等等)时,需要从活动离开时服务一直维护的Node数据重新创建OverlayItem对象.例如,您启动应用程序,服务收集数据,UI显示数据,您转到主页,然后返回应用程序,活动将需要从最新的服务节点数据中提取并重新创建OverlayItem.

我知道这不是一个很好或明确的问题.这就像我所有的SO问题都是利基或模糊.如果有人对如何解释这些SIGSEGV错误有任何建议,我们将不胜感激!

更新 这是调试会话期间捕获的最新崩溃.我有3个这样的设备用于测试,当我开发和测试时,它们并不都可靠地崩溃.我添加了一些额外的内容,因此可以注意到GC日志记录.您可以看到问题可能与内存耗尽无关.

03-03 02:02:38.328: I/CommService(7477): Received packet from: 192.168.1.102
03-03 02:02:38.328: I/CommService(7477): Already processed this packet. It's a re-broadcast from another node, or from myself. It's not a repeat broadcast though.
03-03 02:02:38.406: D/CommService(7477): Checking OLSRd info...
03-03 02:02:38.460: D/CommService(7477): Monitoring nodes...
03-03 02:02:38.515: D/dalvikvm(7477): GC_CONCURRENT freed 2050K, 16% …
Run Code Online (Sandbox Code Playgroud)

android segmentation-fault android-ndk android-service

197
推荐指数
10
解决办法
25万
查看次数

致命信号11(SIGSEGV)位于0x00000000(代码= 1) - PhoneGap

我现在使用PhoneGap开发Android应用程序.最近,当我尝试在HTML页面之间切换时,应用程序关闭,并且在LogCat中出现以下错误:

12-24 15:43:39.237: A/libc(23631): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 23631 (.example.app)
Run Code Online (Sandbox Code Playgroud)

我在谷歌上搜索了一下这个错误,我的理解是它与设备的内存有关.我发现了一些解决方案,但并没有让我意识到我是如何在PhoneGap中实现它们的.

有没有人在这之前遇到过此错误?我该怎么做才能解决问题?

谢谢 :)

java eclipse android cordova

47
推荐指数
5
解决办法
7万
查看次数

如何解析json解析在android中使用GSON

GSON用于解析Json数据.我的Json数据如下:

{
    "count": "12",
    "colbreak": 1,
    "name": "unary rels",
    "score": "9090",
    "Words": [
        {
            "count": 6,
            "word": "prp_g?a?-",
            "name": "prp_g?a?-",
            "score": 9.1,
            "Words": "kol",
            "seek": 2231297
        }
    ],
    "seek": 0
}
Run Code Online (Sandbox Code Playgroud)

GsonParse.java

public class GsonParse {


 @SerializedName("count")
 public String count;

 @SerializedName("colbreak")
 public String colbreak;

 @SerializedName("name")
 public String count;
 @SerializedName("score")
 public String score;

 @SerializedName("Words")
 public List<Words> mWords = new ArrayList<Words>();

 @SerializedName("seek")
 public String seek;
}
Run Code Online (Sandbox Code Playgroud)

我使用下面的方法来解析这个JSON数据.

public static <T> ArrayList<T> JsonParse(T t, String response) {
        // convert String into …
Run Code Online (Sandbox Code Playgroud)

java android json gson

10
推荐指数
3
解决办法
5万
查看次数

Android应用程序在Android OS 5.0上崩溃:android.system.ErrnoException:读取失败:EAGAIN

我开发了一个Android客户端 - 服务器应用程序.我已在我的应用程序中实现了Google map V2,以便用户可以在地图上查看他附近的地点.但是当我在地图和普通活动之间切换时,我的应用程序突然崩溃只在具有OS 5.0的Android设备上.我用过地图片段.以下是我得到的崩溃报告:

android.system.ErrnoException:读取失败:在libcore.io.BlockGuardOs.read上的libcore.io.Posix.read(Posix.java:147)上的libcore.io.Posix.readBytes(本机方法)中的EAGAIN(再试一次)( BlockGuardOs.java:230)位于com.android.server.am.NativeCrashListener的com.android.server.am.NativeCrashListener.consumeNativeCrashData(NativeCrashListener.java:240)的android.system.Os.read(Os.java:364) .RUN(NativeCrashListener.java:138)

这是我如何实例化我的谷歌地图:

mapView = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.mapview)).getMap();
Run Code Online (Sandbox Code Playgroud)

我搜索了很多,以找出这次崩溃的根本原因,但我一无所获.是特定于操作系统的问题,因为我没有从崩溃日志中获取任何信息,告诉我应用程序崩溃的位置.请引导我去抓住这次车祸.提前致谢..!!

android

6
推荐指数
0
解决办法
5326
查看次数

使用gson和GsonBuilder()解析JSON

String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'270B', 'YUDE':'280T'}";
Run Code Online (Sandbox Code Playgroud)

这是我的json字符串.我怎么能解析它给GsonBuilder()我会得到对象?我尝试很少思考但没有效果.

我还阅读了https://sites.google.com/site/gson/gson-user-guide

json gson

4
推荐指数
1
解决办法
3万
查看次数

如何在SharedPreferences中存储和检索Location对象?

我想存储一个Location对象,我正在尝试选择一个很好的方法.请告诉我如何做到这一点

我正在使用此代码,但是当我从首选项获取位置时,位置会像这样返回...

位置[mProvider = STORAGE,MTIME = 0,mLatitude = 30.0,mLongitude = 76.0,mHasAltitude =假,mAltitude = 0.0,mHasSpeed =假,MSPEED = 0.0,mHasBearing =假,mBearing = 0.0,mHasAccuracy =假,mAccuracy = 0.0, mExtras =空]

/** Store Location object in SharedPreferences */
public void storeLocation(Context context, Location location) {
    SharedPreferences settings;
    Editor editor;
    try {
        JSONObject locationJson = new JSONObject();
        locationJson.put(LATITUDE, location.getLatitude());
        locationJson.put(LONGITUDE, location.getLongitude());

        settings = context.getSharedPreferences(PREFS_NAME,Context.MODE_PRIVATE);
        editor = settings.edit();

        editor.putString(KEY_LOCATION, locationJson.toString());
        editor.commit();
        Log.i("location_util_store", "Location" + location);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

/** Retrieve Location object from …
Run Code Online (Sandbox Code Playgroud)

java android sharedpreferences

2
推荐指数
1
解决办法
3824
查看次数