Android LocationManager请求LocationUpdate

Android LocationManager请求LocationUpdate,android,handler,locationmanager,looper,Android,Handler,Locationmanager,Looper,我编写了以下代码,以便在接收到位置更新(这是主线程)时对线程进行回调: 当收到更新时,我希望在日志中看到MSG。相反,当我看到UPD行时,我看不到MSG 那么,当我通过一个活套时,requestLocationUpdates的正确行为是什么?没有人知道该活套的角色………你是UBC的吗?如果是的话,这是最后一个项目xD:Edit:yeah,您确实使用了locationlistener。我不知道你用这个处理器干什么。我们的项目似乎在没有处理程序的情况下运行良好(尽管我们还没有仔细研究)。onLoca

我编写了以下代码,以便在接收到位置更新(这是主线程)时对线程进行回调:

当收到更新时,我希望在日志中看到MSG。相反,当我看到UPD行时,我看不到MSG


那么,当我通过一个活套时,requestLocationUpdates的正确行为是什么?

没有人知道该活套的角色………你是UBC的吗?如果是的话,这是最后一个项目xD:Edit:yeah,您确实使用了locationlistener。我不知道你用这个处理器干什么。我们的项目似乎在没有处理程序的情况下运行良好(尽管我们还没有仔细研究)。onLocationChanged方法更新GeoPoint并调用MapFragment类上的update。不,我不知道什么是UBC(对不起)。我只是想理解为什么我没有看到循环器链接到的处理程序上的回调…:(啊,对不起,(UBC是一所大学)我们有一个项目,其中包含了非常类似的代码:P我不得不问
Handler handler; // this Handler is initialized in the following thread
Runnable r = new Runnable() {
    public void run() {
        Looper.prepare();
        handler = new Handler() {
            @Override
            public void handleMessage(Message msg) {
                Log.d("MSG", msg.toString());
            }
        };
        Looper.loop();
    }
};
Thread t = new Thread(r);
t.start();


LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, new LocationListener() {
    public void onLocationChanged(Location location) {
        Log.d("UPD", "onLocationChanged");
    }
    [...]
}, handler.getLooper());