的工作太多了,我有以下错误MapFragment - 应用程序可以做它的主线程
Skipped 40 frames! The application may be doing too much work on its main thread.
有关研究之吧...确信一切都在新线程开始尽可能用的Runnable。但不断收到错误。我几乎评论了我的所有代码,并且在开始新活动时仍然可以使用它。然后我从我的第一个活动中评论这个mapfragment,并且错误消失了。 因此,错误是由下面的代码引起的:
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:name="com.google.android.gms.maps.MapFragment"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="200dp"
/>
我得到这个从谷歌地图API的Android文档...怪异的种类它不是最优化的。我怎样才能确保错误消失?我可以延迟mapFragment的负载吗?
一旦我打开活动一次...并重新打开它,警告已经消失,因为它已经在内存中了......但是我希望有最佳优化的应用程序。
为了避免混淆这是setContentView导致延迟,因为mapFragment在此函数中加载。延迟会引发警告。我的问题:我如何加快setContentView,以便在打开活动后预先加载或加载mapFragment。
有没有运行任何代码。没有一条线。只有视图的负载,它是导致警告的片段xml。如果我取消注释代码,那么我所有的代码都在不同的线程中,一个在AsyncTask中,所以没关系。 –
如果你显示你的java代码,我可以帮你 –
@LahiruPrasanna它是一个封闭的源代码项目。我只能展示我现在展示的部分。没有代码可以显示。制作一个新的空白项目,放入一个mapfragment(只是上面粘贴的代码),你会发现它对主线程警告提供了太多的工作。 –