Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 不能';无法获取连接工厂客户端_Java_Android - Fatal编程技术网

Java 不能';无法获取连接工厂客户端

Java 不能';无法获取连接工厂客户端,java,android,Java,Android,一切都很好,但问题是当我在地图上的一个位置什么都没有发生 我注册了我的谷歌地图,我在这里做了所有的指示 我可以看到地图,我可以放大和缩小,但当我搜索一个位置时,我在logcat中得到了这个 05-01 12:59:35.512: ERROR/MapActivity(488): Couldn't get connection factory client 05-01 12:59:36.012: INFO/ActivityManager(70): Displayed TaskManager.com

一切都很好,但问题是当我在地图上的一个位置什么都没有发生 我注册了我的谷歌地图,我在这里做了所有的指示

我可以看到地图,我可以放大和缩小,但当我搜索一个位置时,我在logcat中得到了这个

05-01 12:59:35.512: ERROR/MapActivity(488): Couldn't get connection factory client
05-01 12:59:36.012: INFO/ActivityManager(70): Displayed TaskManager.com/.AddLocationMapActivity: +4s562ms
05-01 12:59:36.692: WARN/KeyCharacterMap(488): No keyboard for id 0
05-01 12:59:36.692: WARN/KeyCharacterMap(488): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
05-01 12:59:41.192: DEBUG/dalvikvm(238): GC_EXPLICIT freed 6K, 54% free 2543K/5511K, external 410K/517K, paused 77ms
05-01 12:59:46.352: DEBUG/dalvikvm(318): GC_EXPLICIT freed 6K, 54% free 2597K/5639K, external 410K/517K, paused 158ms
05-01 12:59:51.362: DEBUG/dalvikvm(352): GC_EXPLICIT freed <1K, 54% free 2539K/5511K, external 410K/517K, paused 144ms
05-01 12:59:54.262: WARN/System.err(488): java.io.IOException: Service not Available
05-01 12:59:54.272: WARN/System.err(488):     at android.location.Geocoder.getFromLocationName(Geocoder.java:178)
05-01 12:59:54.282: WARN/System.err(488):     at TaskManager.com.AddLocationMapActivity.mapCurrentLocation(AddLocationMapActivity.java:59)
05-01 12:59:54.282: WARN/System.err(488):     at TaskManager.com.AddLocationMapActivity$1.onClick(AddLocationMapActivity.java:49)
05-01 12:59:54.292: WARN/System.err(488):     at android.view.View.performClick(View.java:2485)
05-01 12:59:54.302: WARN/System.err(488):     at android.view.View$PerformClick.run(View.java:9080)
05-01 12:59:54.302: WARN/System.err(488):     at android.os.Handler.handleCallback(Handler.java:587)
05-01 12:59:54.332: WARN/System.err(488):     at android.os.Handler.dispatchMessage(Handler.java:92)
05-01 12:59:54.332: WARN/System.err(488):     at android.os.Looper.loop(Looper.java:123)
05-01 12:59:54.342: WARN/System.err(488):     at android.app.ActivityThread.main(ActivityThread.java:3683)
05-01 12:59:54.342: WARN/System.err(488):     at java.lang.reflect.Method.invokeNative(Native Method)
05-01 12:59:54.352: WARN/System.err(488):     at java.lang.reflect.Method.invoke(Method.java:507)
05-01 12:59:54.362: WARN/System.err(488):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
05-01 12:59:54.362: WARN/System.err(488):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
05-01 12:59:54.372: WARN/System.err(488):     at dalvik.system.NativeStart.main(Native Method)
05-01 12:59:35.512:错误/MapActivity(488):无法获取连接工厂客户端
05-01 12:59:36.012:INFO/ActivityManager(70):显示TaskManager.com/.AddLocationMapActivity:+4s562ms
05-01 12:59:36.692:WARN/KeyCharacterMap(488):id 0没有键盘
05-01 12:59:36.692:WARN/KeyCharacterMap(488):使用默认keymap:/system/usr/keychars/qwerty.kcm.bin
05-01 12:59:41.192:DEBUG/dalvikvm(238):GC_显式释放6K,54%释放2543K/5511K,外部410K/517K,暂停77ms
05-01 12:59:46.352:DEBUG/dalvikvm(318):GC_显式释放6K,54%释放2597K/5639K,外部410K/517K,暂停158ms
05-01 12:59:51.362:DEBUG/dalvikvm(352):GC_(0)
{
地址=地址。获取(0);
List mapOverlay=mapView.getOverlays();
addressoverlay addressoverlay=新的addressoverlay(地址);
添加(addressoverlay);
mapView.invalidate();
最终MapController MapController=mapView.getController();
mapController.animateTo(addressoverlay.getGeopoint(),new Runnable()){
public void run(){
mapController.setZoom(12);
}});
}
其他的
{
}
}
捕获(IOException异常)
{
异常。printStackTrace();
}
}

有什么帮助吗?提前感谢

如果您在API 8或API 9版本的仿真器中运行此程序,这是仿真器的已知错误,请参阅此错误报告


我发现同样的行为。我可以让它在API 7级仿真器(2.1)上工作,尽管有时会失败,所以我让我的代码在弹出“geocoder error”Toast之前尝试两次。

确保使用正确的API密钥。。。请按照此处的说明操作:


请注意,调试测试生成使用debug.keystore,因此请确保在不生产时为其创建密钥。

那么这个问题的解决方案是什么呢?非常感谢,我在API级别7上尝试过它,效果很好:D
 protected void mapCurrentLocation() {
            String addressString = addressText.getText().toString();
            Geocoder g = new Geocoder(this,Locale.getDefault());
            List<Address> addresses;
            try
            {
//when i use the debugger i get exception at next line 
                addresses = g.getFromLocationName(addressString, 1);
                if(null != addresses && addresses.size()>0)
                {
                    address=addresses.get(0);
                    List<Overlay> mapOverlay=mapView.getOverlays();
                    AdreesOverlay addressoverlay = new AdreesOverlay(address);
                    mapOverlay.add(addressoverlay);
                    mapView.invalidate();
                    final MapController mapController=mapView.getController();
                    mapController.animateTo(addressoverlay.getGeopoint(),new Runnable(){
                        public void run() { 
                            mapController.setZoom(12);
                        }});
                }
                else
                {

                }
            }
            catch(IOException exception)
            {
                exception.printStackTrace();
            }
        }