package com.threeH.MyExhibition.receiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.res.Resources.NotFoundException; import com.threeH.MyExhibition.cache.XmlDB; import com.threeH.MyExhibition.common.StringPools; import com.threeH.MyExhibition.service.ClientContext; import com.threeH.MyExhibition.service.ClientService; import com.threeH.MyExhibition.service.ClientServiceImplForNet; /** * 消息广播接收者 * * @author pjq */ public class MessageReceiver extends BroadcastReceiver { private Context context; private ClientService clientService; private double latitude; private double longitude; private String address = ""; @Override public void onReceive(Context context, Intent intent) { this.context = context; ClientContext clientContext = ClientContext.createClientContext(); clientService = new ClientServiceImplForNet(clientContext); latitude = intent.getDoubleExtra("latitude", 0.0); longitude = intent.getDoubleExtra("longitude", 0.0); address = intent.getStringExtra("address"); new Thread(new Runnable() { @Override public void run() { try { Thread.sleep(3000); registerService(); } catch (InterruptedException e) { e.printStackTrace(); } checkIn(); } }).start(); } /** * 注册 */ private void registerService() { try { if (!XmlDB.getInstance(context) .getKeyStringValue(StringPools.SERVICE_TOKEN, "") .equals("")) clientService.registerService( XmlDB.getInstance(context).getKeyStringValue( StringPools.SERVICE_TOKEN, ""), "CCBN", "ANDROID"); } catch (Exception e) { e.printStackTrace(); } } /** * 签到 */ private void checkIn() { try { System.out.println("21312321312312321" + XmlDB.getInstance(context).getKeyStringValue( StringPools.SERVICE_TOKEN, "")); clientService.checkIn( XmlDB.getInstance(context).getKeyStringValue( StringPools.SERVICE_TOKEN, ""), "CCBN", latitude, longitude, address); } catch (NotFoundException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } }