首页 > 解决方案 > 如何从火力基地获取位置并对汽车标记进行动画处理

问题描述

我已将位置作为纬度和经度存储到火力基地中。现在我想获取那些的价值,并在它的帮助下,汽车标记应该像汽车移动一样动画。所以我做了汽车标记动画。但它只会显示当前位置。我想要火力基地位置,它应该显示动画。

下面的方法我从该特定用户的firebase获取纬度经度

 private void getUserLocation() {


    loc.child(uid).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {

            Locations locations = dataSnapshot.getValue(Locations.class);

        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {

        }
    });

}

每次调用 onLocationChanged 方法,但它只检索当前位置。我希望 Firebase 检索到的位置应该改变

@Override
public void onLocationChanged(Location currentL) {

    mLastLocation = currentL;
    displayLocation();
}




public void displayLocation() {
    try {

        if (ActivityCompat.checkSelfPermission(context,
                Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
                ActivityCompat.checkSelfPermission(context,
                        Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
            // TODO: Consider calling
            // Check Permissions Now
            ActivityCompat.requestPermissions(LocationTracking.this,
                    new String[]{Manifest.permission.ACCESS_FINE_LOCATION},
                    REQUEST_LOCATION);
        } else {

            if (mLastLocation != null && mLastLocation.getLongitude() != 0.0 && mLastLocation.getLongitude() != 0.0) {

                if (mMap != null) {
                    addMarker(mMap, mLastLocation.getLatitude(), mLastLocation.getLongitude());

                }

            }
        }

    } catch (Exception e) {
        e.printStackTrace();
    }
}

现在车根本不动。请指导我

标签: androidfirebasefirebase-realtime-databaseandroid-locationandroid-fusedlocation

解决方案


推荐阅读