예제 #1
0
  /**
   * @Title: updateUserLocation @Description: 更新经纬度
   *
   * @param
   * @return void
   * @throws
   */
  public void updateUserLocation() {
    String newLat = mApplication.getLatitude();
    String newLong = mApplication.getLongtitude();
    if (TextUtils.isEmpty(newLat) && TextUtils.isEmpty(newLong)) return;
    // 是否存在数据
    if (!DBHelper.getInstance(mContext).isUsersInfoSaved(mApplication.getUsername())) {
      return;
    }
    // 获取当前用户名
    final CamelUser mCamelUser =
        DBHelper.getInstance(getApplicationContext())
            .getCurrentUsers(mApplication.getUsername())
            .get(0);
    String saveLatitude = mCamelUser.getUserLatitude();
    String saveLongtitude = mCamelUser.getUserLongitude();
    if (!saveLatitude.equals(newLat)
        || !saveLongtitude.equals(newLong)) { // 只有位置有变化就更新当前位置,达到实时更新的目的
      mCamelUser.setUserLatitude(newLat); // 设置纬度
      mCamelUser.setUserLongitude(newLong); // 设置经度

      if (DBHelper.getInstance(mContext).isUsersInfoSaved(mCamelUser.getUserAccount())) {
        Log.e("latlon", "更新经纬度成功");
        DBHelper.getInstance(mContext).updateToUsersInfoTable(mCamelUser);
      }
    }
  }