forked from pvqcyimsk/gitproject
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
225 lines
8.1 KiB
225 lines
8.1 KiB
package com.example.myapplication;
|
|
|
|
import androidx.appcompat.app.AppCompatActivity;
|
|
import android.content.Intent;
|
|
import android.os.Bundle;
|
|
import android.view.View;
|
|
import android.widget.Button;
|
|
|
|
import com.baidu.mapapi.bikenavi.BikeNavigateHelper;
|
|
import com.baidu.mapapi.walknavi.adapter.IWRoutePlanListener;
|
|
import com.baidu.mapapi.walknavi.model.WalkRoutePlanError;
|
|
import com.baidu.mapapi.walknavi.params.*;
|
|
import com.baidu.mapapi.CoordType;
|
|
import com.baidu.mapapi.SDKInitializer;
|
|
import com.baidu.mapapi.model.LatLng;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
import android.widget.ImageButton;
|
|
import android.widget.TextView;
|
|
import android.annotation.SuppressLint;
|
|
import android.os.Bundle;
|
|
import com.baidu.baidunavis.BaiduNaviParams;
|
|
import com.baidu.mapapi.SDKInitializer;
|
|
import com.baidu.mapapi.map.MapView;
|
|
import com.baidu.mapapi.model.LatLng;
|
|
import com.baidu.mapapi.walknavi.WalkNavigateHelper;
|
|
import com.baidu.mapapi.walknavi.adapter.IWEngineInitListener;
|
|
import com.baidu.mapapi.walknavi.params.WalkNaviLaunchParam;
|
|
|
|
public class itemfound extends AppCompatActivity {
|
|
private WalkNavigateHelper helper = null;
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
|
|
//initPermissions(); // 初始化权限
|
|
setContentView(R.layout.activity_itemfound); // 填充视图
|
|
|
|
// 点击按钮开始导航
|
|
Button imageButton = findViewById(R.id.button_item_keys);
|
|
imageButton.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View view) {
|
|
// 初始化步行导航
|
|
startBikeNavi();
|
|
}
|
|
});
|
|
Button imageButtonwallet = findViewById(R.id.button_item_wallet);
|
|
imageButtonwallet.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View view) {
|
|
// 初始化步行导航
|
|
startBikeNavi();
|
|
}
|
|
});
|
|
}
|
|
// 初始化权限
|
|
/*
|
|
private void initPermissions() {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
ArrayList<String> permissionsList = new ArrayList<>();
|
|
String[] permissions = {
|
|
Manifest.permission.ACCESS_NETWORK_STATE,
|
|
Manifest.permission.INTERNET,
|
|
Manifest.permission.ACCESS_COARSE_LOCATION,
|
|
Manifest.permission.ACCESS_FINE_LOCATION,
|
|
Manifest.permission.WRITE_EXTERNAL_STORAGE,
|
|
};
|
|
|
|
for (String perm : permissions) {
|
|
if (PackageManager.PERMISSION_GRANTED != checkSelfPermission(perm)) {
|
|
permissionsList.add(perm);
|
|
// 进入到这里代表没有权限.
|
|
}
|
|
if (!permissionsList.isEmpty()) {
|
|
String[] strings = new String[permissionsList.size()];
|
|
requestPermissions(permissionsList.toArray(strings), 0);
|
|
}
|
|
}
|
|
|
|
}
|
|
}*/
|
|
private void startBikeNavi() {
|
|
//Log.d("=========", "startBikeNavi");
|
|
try {
|
|
helper = WalkNavigateHelper.getInstance();
|
|
helper.initNaviEngine(this, new IWEngineInitListener() {
|
|
@Override
|
|
public void engineInitSuccess() {
|
|
// Log.d("=========", "BikeNavi engineInitSuccess引擎初始化成功");
|
|
startWebNavi();
|
|
}
|
|
|
|
@Override
|
|
public void engineInitFail() {
|
|
// Log.d("=========", "BikeNavi engineInitFail");
|
|
BikeNavigateHelper.getInstance().unInitNaviEngine();
|
|
}
|
|
});
|
|
} catch (Exception e) {
|
|
// Log.d("=========", "startBikeNavi Exception");
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
private void startWebNavi() {
|
|
//起终点位置
|
|
LatLng walkStartNode = new LatLng(39.110132, 117.358512);
|
|
LatLng walkEndNode = new LatLng(39.111348, 117.358940);
|
|
|
|
WalkRouteNodeInfo startNode = new WalkRouteNodeInfo();
|
|
startNode.setLocation(walkStartNode);
|
|
WalkRouteNodeInfo endNode = new WalkRouteNodeInfo();
|
|
endNode.setLocation(walkEndNode);
|
|
// 官网
|
|
//构造WalkNaviLaunchParam
|
|
WalkNaviLaunchParam walkParam = new WalkNaviLaunchParam().startNodeInfo(startNode).endNodeInfo(endNode);
|
|
//获取WalkNavigateHelper实例 //发起算路
|
|
helper.routePlanWithRouteNode(walkParam, new IWRoutePlanListener() {
|
|
@Override
|
|
public void onRoutePlanStart() {
|
|
// Log.d("=======", "WalkNavi onRoutePlanStart开始步行导航");
|
|
}
|
|
|
|
@Override
|
|
public void onRoutePlanSuccess() {
|
|
// Log.d("========", "onRoutePlanSuccess算路成功");
|
|
Intent intent = new Intent(itemfound.this,WNaviGuideActivity.class);
|
|
// intent.setClass(getContext(), WNaviGuideActivity.class);
|
|
startActivity(intent);
|
|
}
|
|
|
|
@Override
|
|
public void onRoutePlanFail(WalkRoutePlanError error) {
|
|
// Log.d("Walk", "WalkNavi onRoutePlanFail");
|
|
}
|
|
|
|
});
|
|
}
|
|
|
|
|
|
/*
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
|
|
super.onCreate(savedInstanceState);
|
|
setContentView(R.layout.activity_itemfound);
|
|
Button find_wallet=findViewById(R.id.button_item_wallet);
|
|
Button find_keys=findViewById(R.id.button_item_keys);
|
|
find_wallet.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View view) {//Intent
|
|
double locationX;
|
|
double locationy;
|
|
//BaiduMapNavigation
|
|
|
|
|
|
}
|
|
});
|
|
find_keys.setOnClickListener(new View.OnClickListener() {
|
|
@Override
|
|
public void onClick(View view) {//Intent
|
|
//NaviParaOption para=new Navi();
|
|
|
|
}
|
|
});
|
|
}*/ private void startBikeNavi1() {
|
|
//Log.d("=========", "startBikeNavi");
|
|
try {
|
|
helper = WalkNavigateHelper.getInstance();
|
|
helper.initNaviEngine(this, new IWEngineInitListener() {
|
|
@Override
|
|
public void engineInitSuccess() {
|
|
// Log.d("=========", "BikeNavi engineInitSuccess引擎初始化成功");
|
|
startWebNavi1();
|
|
}
|
|
|
|
@Override
|
|
public void engineInitFail() {
|
|
// Log.d("=========", "BikeNavi engineInitFail");
|
|
BikeNavigateHelper.getInstance().unInitNaviEngine();
|
|
}
|
|
});
|
|
} catch (Exception e) {
|
|
// Log.d("=========", "startBikeNavi Exception");
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
private void startWebNavi1() {
|
|
//起终点位置
|
|
LatLng walkStartNode = new LatLng(39.110132, 117.358512);
|
|
LatLng walkEndNode = new LatLng(39.112286, 117.359619);
|
|
|
|
WalkRouteNodeInfo startNode = new WalkRouteNodeInfo();
|
|
startNode.setLocation(walkStartNode);
|
|
WalkRouteNodeInfo endNode = new WalkRouteNodeInfo();
|
|
endNode.setLocation(walkEndNode);
|
|
// 官网
|
|
//构造WalkNaviLaunchParam
|
|
WalkNaviLaunchParam walkParam = new WalkNaviLaunchParam().startNodeInfo(startNode).endNodeInfo(endNode);
|
|
//获取WalkNavigateHelper实例 //发起算路
|
|
helper.routePlanWithRouteNode(walkParam, new IWRoutePlanListener() {
|
|
@Override
|
|
public void onRoutePlanStart() {
|
|
// Log.d("=======", "WalkNavi onRoutePlanStart开始步行导航");
|
|
}
|
|
|
|
@Override
|
|
public void onRoutePlanSuccess() {
|
|
// Log.d("========", "onRoutePlanSuccess算路成功");
|
|
Intent intent = new Intent(itemfound.this,WNaviGuideActivity.class);
|
|
// intent.setClass(getContext(), WNaviGuideActivity.class);
|
|
startActivity(intent);
|
|
}
|
|
|
|
@Override
|
|
public void onRoutePlanFail(WalkRoutePlanError error) {
|
|
// Log.d("Walk", "WalkNavi onRoutePlanFail");
|
|
}
|
|
|
|
});
|
|
}
|
|
}
|