Geocoder在仿真器测试期间找不到位置

问题描述 投票:1回答:1

我正在创建一个应用程序,您可以在其中创建多种类型的帐户,数据存储在SQLite数据库中,并使用Geocoder验证了地址输入。但是,地理编码器似乎只能在我冷启动模拟器或清除应用程序的存储后才能工作。我认为这是因为地址解析器花费的时间太长,因此只会引发异常。但是,我不知道是什么原因导致了这种滞后,因为我做了很多尝试和优化运行时间的事情。增加模拟器的存储空间并使用“异步任务”。我收到的错误消息是grpc失败。一些logcat消息是:

I/le.walkinclini: NativeAlloc concurrent copying GC freed 68211(2747KB) AllocSpace objects, 0(0B) LOS objects, 49% free, 3487KB/6974KB, paused 661us total 105.541ms

I/AssistStructure: Flattened final assist data: 1600 bytes, containing 1 windows, 7 views

I/Choreographer: Skipped 300 frames!  The application may be doing too much work on its main thread. 
android database performance geocoding geocode
1个回答
0
投票

即使在真实设备中,我也捕获了grpc失败] >>

我注意到当应用程序打开时,手机正在连接至wifi,然后突然更改为使用移动数据,Geocoder始终抛出此错误,无法再次重新连接。仍找不到任何解决方案来解决此问题

我的解决方案是,当Geocoder实例抛出错误时,我使用了备份API请求,该请求调用了Google地理编码API。可以更长一些,但是可以确保成功

© www.soinside.com 2019 - 2024. All rights reserved.