1

ギャラクシーポップ、ギャラクシーyの現在地の現在の緯度と経度を取得できます。しかし、HTCエクスプローラーで現在の場所を取得できませんか?

私が使用しているコーディングは次のとおりです。

    @Override
    protected void onStart() {

            // TODO Auto-generated method stub

            super.onStart();
            context = Context.LOCATION_SERVICE;
            locationManager = (LocationManager)getSystemService(context);
            locationManager.requestLocationUpdates(provider, 1, 1, locationListener);
            crta = new Criteria();
            crta.setAccuracy(Criteria.ACCURACY_FINE);
            crta.setAltitudeRequired(false);
            crta.setBearingRequired(false);
            crta.setCostAllowed(true);
            crta.setPowerRequirement(Criteria.POWER_LOW);
            //String provider = locationManager.getBestProvider(crta, true);
             String provider = LocationManager.GPS_PROVIDER;
             location = locationManager.getLastKnownLocation(provider);
             updateWithNewLocation(location);
            }

            private void updateWithNewLocation(Location location) {
                        String latLong;             
`enter code here`//                      myLocation = (TextView) findViewById(R.id.myLocation);
                        String addressString = "no address found";


                        if(location!=null) {
            System.out.println("Provider " + provider + " has been selected.");
            lat  = (Double) (location.getLatitude());
            lng  = (Double) (location.getLongitude()); 
        // Gomathi
                                    double valueofGPSlat = lat * 1000;
                                    int GPSsum = (int) valueofGPSlat;
                                    GPSvalue = (double) GPSsum / 1000;


                                    // Get Current Location
                                    latt = Double.toString(GPSvalue);                                                                                                                                                         
                                    // Getlon
                                    double valueofGPSlng = lng * 1000;
                                    int resultGPSsum = (int) valueofGPSlng;
                                    resultGPSvalue = (double) resultGPSsum / 1000;
                                    longt = Double.toString(resultGPSvalue);
            // GomathiEnd
                        } else {
                        latLong = " NO Location Found ";
                        }
                        //myLocation.setText("your Current Position is :\n" +latLong + "\n " + addressString );

                        Toast.makeText(UsertaskoptionsActivity.this,"your Current Position is :\n" +latt + "\n " + ""+longt , Toast.LENGTH_LONG).show();
                        }

            private LocationListener locationListener = new LocationListener()
            {
            @Override
            public void onLocationChanged(Location location) {
            updateWithNewLocation(location);
            }

            private void updateWithNewLocation(Location location) {
                        // TODO Auto-generated method stub
            }

            @Override
            public void onProviderDisabled(String provider) {          
            updateWithNewLocation(null);
            }

            @Override
            public void onProviderEnabled(String provider) {

            }

            @Override
            public void onStatusChanged(String provider, int status, Bundle extras) {

            }
            };
4

1 に答える 1

0

それぞれのプロバイダーがまだ場所を取得していない場合、最後の既知の場所は取得されません。最初にGPSを使用する他のアプリを実行してみることができます。通常、アプリを場所の更新に登録する必要があります。「ユーザーの場所の取得」に関するAndroid開発ガイドをご覧ください。http://developer.android.com/guide/topics/location/obtaining-user-location.html

于 2012-05-29T06:29:19.093 に答える