小编Die*_*ena的帖子

如何每1分钟执行一次asynctask?

我有一个asynctask获取服务器的位置并制作一个标记,asynctask在OnCreate()运行一次并且工作正常但我需要每分钟运行它,我读到我需要使用计时器但我不明白如何实现它,继承asynctask:

    public class AsyncTaskParseJson extends AsyncTask<String, String, String> {
    final String TAG = "AsyncTaskParseJson.java";

    // set json string url 
    String yourJsonStringUrl = url;
    JSONArray dataJsonArr = null;
    @Override
    protected void onPreExecute() {}
    @Override
    protected String doInBackground(String... arg0) {

        try {

            // instantiate json parser
            LatLngActivity jParser = new LatLngActivity();

            // get json string from url
            JSONObject json = jParser.getJSONFromUrl(yourJsonStringUrl);
            // get the array of users
            dataJsonArr = json.getJSONArray(ID_CAMION);
            for (int i = 0; i < dataJsonArr.length(); i++) {

                JSONObject c …
Run Code Online (Sandbox Code Playgroud)

android timer android-asynctask

2
推荐指数
1
解决办法
5122
查看次数

Google Maps api v2 android:如何删除单个标记?

在我的应用程序中,我需要有两种类型的标记:第一种需要留在一个位置,第二种需要移动,现在我还没有静态标记但我的应用程序可以显示标记移动,如果位置电话改变了,但是我打电话给mMap.clear(),我不想在位置改变时清除所有标记,所以我只需要删除那个标记,我在另一个问题中读到我需要使用Marker.remove(); 删除单个标记,但我不知道在代码中的实现位置.

以下是新位置的方法:

public void onLocationChanged(Location location) {
    mMap.clear();
    GetLatLong();
    handleNewLocation(location);
    mCurrentLocation = location;


}
Run Code Online (Sandbox Code Playgroud)

这是handleNewLocation方法:

    private void handleNewLocation(Location location) {
    if (mLastLocation != null) {

        LatLng latLng = new LatLng(list.get(0), list.get(1));
        //mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));


        //añadir un nuevo marker con la posición de la variable latLng
        MarkerOptions camion = new MarkerOptions()
                .position(latLng)
                .title("Camión")
                .snippet("ruta " + ruta)
                .icon(BitmapDescriptorFactory.fromResource(R.drawable.bus));


        Marker marker = mMap.addMarker(camion);
        if (marker == null) {
            mMap.addMarker(camion);
        } else {
            camion.position(latLng);

        }

    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

编辑:

List<Marker> markers = new ArrayList<Marker>(); …
Run Code Online (Sandbox Code Playgroud)

java android google-maps marker

1
推荐指数
1
解决办法
3043
查看次数

标签 统计

android ×2

android-asynctask ×1

google-maps ×1

java ×1

marker ×1

timer ×1