因此,我正在根据此Google Maps示例编写活动:
我有api凭据,已使用以下代码从地图中配置并成功显示了静态地图图钉:
@Override
public void onmapReady(GoogleMap googleMap) {
LatLng test = new LatLng(0,45.505);
googleMap.addMarker(new MarkerOptions().position(test)
.title("Test Marker"));
googleMap.moveCamera(CameraUpdateFactory.newLatLng(test));
}
我还有另一个活动,该活动以以下格式附加到位于/storage/emulated/0/csvLogs/source.csv的csv文件中:
日期,标题,lat,长
下面,我尝试编写代码以从csv文件中获取所需格式的每行调用多个令牌。我正在寻找最终结果以显示csv文件中的每一行的地图图钉/标题。也不想从资产加载csv。我想我很亲密,有人请更正此代码+添加我可能需要的任何导入。非常感谢。
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatactivity;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnmapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.MarkerOptions;
import java.io.File;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.String;
public class Mapactivity extends AppCompatactivity
implements OnmapReadyCallback {
GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
map.setMapType(GoogleMap.MAP_TYPE_HYBRID);
mapFragment.getMapAsync(this);
}
@Override
public void onmapReady(GoogleMap googleMap) {
File fileGet = new File("/storage/emulated/0/csvLogs/source.csv");
try {
BufferedReader br = new BufferedReader(new FileReader(fileGet));
String line;
while ((line = br.readLine()) !=null) {
String[] token = line.split(",");
double lat = Double.parseDouble(token[2]);
double lon = Double.parseDouble(token[3]);
LatLng Lat = new LatLng(lat,lon);
googleMap.addMarker(new MarkerOptions().position(Lat).title(token[1]));
googleMap.moveCamera(CameraUpdateFactory.newLatLng(Lat));
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
目前有0个错误,但没有崩溃就不会打开活动