随机图形页面强制关闭:NullPointerException异常com.google.googlenav.map.Tile.getTile [英] Random MapView Force Close : NullPointerException com.google.googlenav.map.Tile.getTile

查看:175
本文介绍了随机图形页面强制关闭:NullPointerException异常com.google.googlenav.map.Tile.getTile的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我真的需要一些帮助。我有一个强制关闭这个堆栈跟踪报告,我不能找到如何prevent的任何信息,也没有我可以复制这种类型的错误。我希望有人会对为什么发生这种情况的一些见解。

  com.google.googlenav.map.Tile.getTile(来源不明)
com.google.googlenav.map.Tile.read(来源不明)
com.google.googlenav.map.MapTile.read(来源不明)
com.google.googlenav.map.FlashRecord.loadTileFromDataEntry(来源不明)
com.google.googlenav.map.FlashRecord.loadTile(来源不明)
com.google.googlenav.map.MapFlashService.loadFlashRecordTile(来源不明)
com.google.googlenav.map.MapFlashService.getMapTile(来源不明)
com.google.googlenav.map.MapService.getTile(来源不明)
com.google.googlenav.map.Map.drawTile(来源不明)
com.google.googlenav.map.Map.drawMapBackground(来源不明)
com.google.googlenav.map.Map.drawMap(来源不明)
com.google.android.maps.MapView.drawMap(MapView.java:1048)
com.google.android.maps.MapView.onDraw(MapView.java:486)
android.view.View.draw(View.java:6739)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.widget.FrameLayout.draw(FrameLayout.java:352)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.widget.FrameLayout.draw(FrameLayout.java:352)
com.android.internal.policy.impl.PhoneWindow $ DecorView.draw(PhoneWindow.java:1872)
android.view.ViewRoot.draw(ViewRoot.java:1422)
android.view.ViewRoot.performTraversals(ViewRoot.java:1167)
android.view.ViewRoot.handleMessage(ViewRoot.java:1744)
android.os.Handler.dispatchMessage(Handler.java:99)
android.os.Looper.loop(Looper.java:144)
android.app.ActivityThread.main(ActivityThread.java:4937)
java.lang.reflect.Method.invokeNative(本机方法)
java.lang.reflect.Method.invoke(Method.java:521)
com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
dalvik.system.NativeStart.main(本机方法)
 

解决方案

不是我自己的,但是这是固定在我的图形页面崩溃

 公共类TrackMapView扩展图形页面{
    公共TrackMapView(上下文的背景下,ATTRS的AttributeSet){
        超(背景下,ATTRS);
    }

    @覆盖
    公共无效画(油画画布){
        尝试 {
            如果(this.getZoomLevel()> = 21){
                this.getController()setZoom(20)。
            }
            super.draw(画布);
        }
        赶上(例外前){
            getController()setCenter(this.getMapCenter())。
            。getController()setZoom(this.getZoomLevel() -  2);
            Log.d(TrackMapView,在图形页面内部错误:+ Log.getStackTraceString(前));
        }
    }
}
 

I really need some help. I have a report of a force close with this stack trace, and I cant find any information on how to prevent, nor can I replicate this type of error. I was hoping someone would have some insight on why this is happening.

com.google.googlenav.map.Tile.getTile(Unknown Source)
com.google.googlenav.map.Tile.read(Unknown Source)
com.google.googlenav.map.MapTile.read(Unknown Source)
com.google.googlenav.map.FlashRecord.loadTileFromDataEntry(Unknown Source)
com.google.googlenav.map.FlashRecord.loadTile(Unknown Source)
com.google.googlenav.map.MapFlashService.loadFlashRecordTile(Unknown Source)
com.google.googlenav.map.MapFlashService.getMapTile(Unknown Source)
com.google.googlenav.map.MapService.getTile(Unknown Source)
com.google.googlenav.map.Map.drawTile(Unknown Source)
com.google.googlenav.map.Map.drawMapBackground(Unknown Source)
com.google.googlenav.map.Map.drawMap(Unknown Source)
com.google.android.maps.MapView.drawMap(MapView.java:1048)
com.google.android.maps.MapView.onDraw(MapView.java:486)
android.view.View.draw(View.java:6739)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.widget.FrameLayout.draw(FrameLayout.java:352)
android.view.ViewGroup.drawChild(ViewGroup.java:1648)
android.view.ViewGroup.dispatchDraw(ViewGroup.java:1375)
android.view.View.draw(View.java:6742)
android.widget.FrameLayout.draw(FrameLayout.java:352)
com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1872)
android.view.ViewRoot.draw(ViewRoot.java:1422)
android.view.ViewRoot.performTraversals(ViewRoot.java:1167)
android.view.ViewRoot.handleMessage(ViewRoot.java:1744)
android.os.Handler.dispatchMessage(Handler.java:99)
android.os.Looper.loop(Looper.java:144)
android.app.ActivityThread.main(ActivityThread.java:4937)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:521)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
dalvik.system.NativeStart.main(Native Method) 

解决方案

Not my own but this is what fixed crashes on my MapView

public class TrackMapView extends MapView {
    public TrackMapView(Context context, AttributeSet attrs) {
        super(context, attrs); 
    }

    @Override
    public void draw(Canvas canvas) {
        try {
            if(this.getZoomLevel() >= 21) {
                this.getController().setZoom(20);
            }
            super.draw(canvas);
        }
        catch(Exception ex) {           
            getController().setCenter(this.getMapCenter());
            getController().setZoom(this.getZoomLevel() - 2);
            Log.d("TrackMapView", "Internal error in MapView:" + Log.getStackTraceString(ex));
        }
    }
}

这篇关于随机图形页面强制关闭:NullPointerException异常com.google.googlenav.map.Tile.getTile的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆