package
com.baidulocation;
import
android.content.Context;
import
com.baidu.location.BDLocation;
import
com.baidu.location.BDLocationListener;
import
com.baidu.location.LocationClient;
import
com.baidu.location.LocationClientOption;
public
class
MyBaiduLotion {
Context myContext;
private
LocationClient locationClient =
null
;
private
static
final
int
UPDATE_TIME =
4000
;
private
static
int
LOCATION_COUTNS =
0
;
private
boolean
isFinish =
false
;
MyBDcoordinate myBDcoordinate =
null
;
MyLocation myLocation;
String strlocation =
""
;
public
MyBaiduLotion(Context context) {
myContext = context;
myLocation =
new
MyLocation();
initLockPst();
}
class
MyBDcoordinate{
double
Latitude;
double
Longitude;
}
private
void
initLockPst(){
locationClient =
new
LocationClient(
this
.myContext);
LocationClientOption option =
new
LocationClientOption();
option.setOpenGps(
true
);
option.setCoorType(
"bd09ll"
);
option.setPriority(LocationClientOption.NetWorkFirst);
option.setProdName(
"LocationDemo"
);
option.setScanSpan(UPDATE_TIME);
locationClient.setLocOption(option);
locationClient.registerLocationListener(
new
BDLocationListener() {
@Override
public
void
onReceiveLocation(BDLocation location) {
if
(myBDcoordinate !=
null
){
stopOpetateClient();
return
;
}
if
(LOCATION_COUTNS >
5
){
stopOpetateClient();
return
;
}
if
(location ==
null
) {
LOCATION_COUTNS ++;
return
;
}
if
(location.getLocType() !=
161
){
LOCATION_COUTNS ++;
return
;
}
myBDcoordinate =
new
MyBDcoordinate();
myBDcoordinate.Latitude = location.getLatitude();
myBDcoordinate.Longitude = location.getLongitude();
}
@Override
public
void
onReceivePoi(BDLocation location) {
}
});
}
private
void
stopOpetateClient(){
locationClient.stop();
isFinish =
true
;
}
private
void
startOpetateClient(){
locationClient.start();
public
double
getLatValue(){
return
myBDcoordinate.Latitude;
}
public
double
getLongValue(){
return
myBDcoordinate.Longitude;
}
public
void
desClient(){
if
(locationClient !=
null
&& locationClient.isStarted()) {
locationClient.stop();
locationClient =
null
;
}
}
}