Ian*_*ley 10 android google-maps memory-leaks android-mapview leakcanary
当使用最新的谷歌地图API中的MapView时,我收到了内存泄漏,因为MapView正在保持我的活动.
我使用了泄漏金丝雀并且有这种痕迹
D/LeakCanary:*GC ROOT com.google.android.gms.location.internal.ta
D/LeakCanary:*引用com.google.android.gms.location.internal.sa
D/LeakCanary:*引用com.google.maps.api.android.lib6.dvc
D/LeakCanary:*引用com.google.maps.api.android.lib6.d.aj.b
D/LeakCanary:*引用com.google.maps.api.android.lib6.gmm6.cpa
D/LeakCanary:*引用com.google.maps.api.android.lib6.gmm6.cymParent
D/LeakCanary:*引用android.widget.FrameLayout.mParent
D/LeakCanary:*引用com.google.android.gms.maps.MapView.mContext
D/LeakCanary:*泄漏com.myapp.activities.main.AttractionDetailActivity实例
谁看过这个吗?
小智 20
检查您是否正在调用googleMap.setMyLocationEnabled(true)onMapReady()回调.
如果你那么你应该打电话给googleMap.setMyLocationEnabled(false)你的onDestroy.
这对我有用:
@Override
public void onDestroy() {
super.onDestroy();
mMapView.onDestroy();
if (mMap != null) {
mMap.setMyLocationEnabled(false);
mMap.clear();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2275 次 |
| 最近记录: |