Расположение иногда ноль - PullRequest
0 голосов
/ 15 марта 2020

Когда я пробую свое приложение, созданное с помощью FusedLocation на моем мобильном телефоне, иногда местоположение становится пустым. После того, как я go перешел в свое приложение GoogleMaps и получил оттуда обновление, местоположение возвращается, когда я возвращаюсь в свое приложение. Есть ли способ получить объект местоположения, когда мое приложение открывается без необходимости использования другого приложения?

Зависимости

 implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.google.android.gms:play-services-location:16.0.0'

AndroidManifest. xml

 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

MapsActivity. Java

private GoogleMap mMap;
    FusedLocationProviderClient fusedLocationClient;  
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mapFragment.getMapAsync(this);
        fusedLocationClient = LocationServices.getFusedLocationProviderClient(this);

        if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
            return;
        }
        fusedLocationClient.getLastLocation()
                .addOnSuccessListener(this, new OnSuccessListener<Location>() {
                    @Override
                    public void onSuccess(Location location) {
                        // Got last known location. In some rare situations this can be null.
                        if (location != null) {
                            // Logic to handle location object
                            Toast.makeText(MapsActivity.this, "Dolu", Toast.LENGTH_SHORT).show();
                        }
                        else{
                            Toast.makeText(MapsActivity.this, "Boş", Toast.LENGTH_SHORT).show();
                        }
                    }
                });

    }
    @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        mMap.clear();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...