diff --git a/app/build.gradle b/app/build.gradle index e01e3cf..d3987bb 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'com.android.application' android { compileSdkVersion 29 buildToolsVersion '29.0.2' - ndkVersion '23.0.7123448' + // ndkVersion '23.0.7123448' defaultConfig { applicationId "com.navinfo.outdoor" diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index cde22bd..2d684a1 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -47,7 +47,6 @@ android:supportsRtl="true" android:theme="@style/Theme.WhiteScreen" tools:targetApi="n"> - @@ -59,6 +58,8 @@ android:name=".activity.PictureActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize|navigation" android:launchMode="singleTop" /> + removables; @@ -86,32 +87,36 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen private ViewGroup layerChange; // 切换地图和相机的父控件 private CheckBox capturePicture, cbMapType;//拍照 private boolean isMapSlide = false; - private boolean listenerPicture = false; + /* + private boolean listenerPicture = false; + */ private SimpleDateFormat formatter; private File paperFile; - private int type, videoIndex; + private int type; private ImageView ivZoomAdd, ivZoomDel, ivLocation; private Handler handler = new Handler(new Handler.Callback() { @Override public boolean handleMessage(@NonNull Message msg) { - if (msg.what == 0x101 && listenerPicture) { + if (msg.what == 0x101) { camera.takePicture(); } else if (msg.what == 0x102) { if (btnSwitch != null) { -// tencentMap.setBaseMapEnabled(true); btnSwitch.setEnabled(true); } } else if (msg.what == 0x103) { - listenerPicture = false; if (type != 3) { capturePicture.setText("开始采集"); } capturePicture.setChecked(false); + stopTimer(); } return false; } }); + private Timer timer; + private TimerTask timerTask; + private int videoIndex = -1; @Override protected int getLayout() { @@ -136,7 +141,6 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen formatter = new SimpleDateFormat("yyyyMMdd HHmmss"); this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); ivMap = findViewById(R.id.iv_map); - ivMap.setOnClickListener(this::onClick); btnSwitch = findViewById(R.id.btn_switch); btnSwitch.setOnClickListener(this); //相机记录器 @@ -145,23 +149,24 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen ivZoomAdd.setOnClickListener(this); ivZoomDel = findViewById(R.id.iv_zoom_del); ivZoomDel.setOnClickListener(this); -// cbMapType =findViewById(R.id.cb_map_type); -// cbMapType.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { -// @Override -// public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { -// setLocMarkerStyle(LOCATION_TYPE_LOCATION_ROTATE_NO_CENTER); -// } -// }); + /* cbMapType =findViewById(R.id.cb_map_type); + cbMapType.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + setLocMarkerStyle(LOCATION_TYPE_LOCATION_ROTATE_NO_CENTER); + } + });*/ ivLocation = findViewById(R.id.iv_location); ivLocation.setOnClickListener(this); camera = findViewById(R.id.camera); + camera.setOnClickListener(this); capturePicture = findViewById(R.id.capture_picture); if (type == 3) { capturePicture.setText("拍摄"); } else { capturePicture.setText("开始采集"); } - capturePicture.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + /* capturePicture.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { // 开始采集,设置按钮文字内容为“结束采集” @@ -177,6 +182,22 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen } } } + });*/ + capturePicture.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + if (isChecked) { + if (type != 3) { + capturePicture.setText("暂停采集"); + } + startTimer(); + } else { + if (type != 3) { + capturePicture.setText("开始采集"); + } + stopTimer(); + } + } }); Button stopPicture = findViewById(R.id.btn_stop_picture); stopPicture.setOnClickListener(this); @@ -206,29 +227,32 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen } } } - tencentMap.setOnMapClickListener(new TencentMap.OnMapClickListener() { + camera.addCameraListener(new CameraListener() { @Override - public void onMapClick(LatLng latLng) { - btnSwitch.setEnabled(false); - handler.sendEmptyMessageDelayed(0x102, 2000);// 利用handler延迟发送更改状态信息 - DisplayMetrics dm = new DisplayMetrics(); - getWindowManager().getDefaultDisplay().getMetrics(dm); - System.out.println("width-display :" + dm.widthPixels); - System.out.println("height-display :" + dm.heightPixels); - FrameLayout.LayoutParams layoutParamsMap = (FrameLayout.LayoutParams) ivMap.getLayoutParams();//地图的宽高 - int heightMap = ivMap.getMeasuredHeight(); - int widthMap = ivMap.getMeasuredWidth(); - FrameLayout.LayoutParams layoutParamsCamera = (FrameLayout.LayoutParams) camera.getLayoutParams();//相机的宽高 - int heightCamera = camera.getMeasuredHeight(); - int widthCamera = camera.getMeasuredWidth(); - if (heightMapheightCamera){ -// benSwitch(); -// } - } - }); } private void message(String content) { @@ -363,7 +362,9 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen public void onClick(View v) { switch (v.getId()) { case R.id.btn_stop_picture: +/* listenerPicture = false; +*/ Intent intent = new Intent(); finalVideoPath = Objects.requireNonNull(paperFile.getParentFile()).getAbsolutePath() + "/" + videoIndex + ".jpg"; intent.putExtra(Constant.INTENT_PICTURES_PATH, finalVideoPath); @@ -372,9 +373,9 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen finish(); break; case R.id.btn_switch: -// v.setEnabled(false); -// handler.sendEmptyMessageDelayed(0x102, 2000);// 利用handler延迟发送更改状态信息 -// benSwitch(); + v.setEnabled(false); + handler.sendEmptyMessageDelayed(0x102, 2000);// 利用handler延迟发送更改状态信息 + benSwitch(); break; case R.id.iv_zoom_add://放大 CameraUpdate cameraUpdateIn = CameraUpdateFactory.zoomIn(); @@ -395,8 +396,6 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen tencentMap.animateCamera(cameraSigma); } break; - - } } @@ -473,7 +472,6 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen isMapSlide = false; ivZoomAdd.setVisibility(View.GONE); ivZoomDel.setVisibility(View.GONE); - ivLocation.setVisibility(View.GONE); setLocMarkerStyle(LOCATION_TYPE_LOCATION_ROTATE); @@ -517,19 +515,20 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen protected void onPause() { super.onPause(); camera.close(); - if (type != 3) { - listenerPicture = false; - } + stopTimer(); } @Override protected void onDestroy() { super.onDestroy(); camera.destroy(); + stopTimer(); if (polyline != null) { polyline.remove(); } +/* listenerPicture = false; +*/ for (int i = 0; i < removables.size(); i++) { removables.get(i).remove(); } @@ -559,7 +558,7 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen StringBuilder sb = new StringBuilder(); sb.append(formatter.format(new Date())); // 记录当前时 sb.append(","); - sb.append(videoIndex);//個數 + sb.append(videoIndex == -1 ? 0 : (videoIndex + 1));//個數 sb.append(","); sb.append(Constant.currentLocation.getLatitude()); sb.append(","); @@ -571,13 +570,51 @@ public class PicturesActivity extends BaseActivity implements View.OnClickListen sb.append(Constant.currentLocation.getDirection()); } sb.append("\r\n"); + FileUtils.writeFile(paperFile.getAbsolutePath(), sb.toString(), true); + } + + public void initMarker() { LatLng latLng = new LatLng(Constant.currentLocation.getLatitude(), Constant.currentLocation.getLongitude()); BitmapDescriptor pileDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.circle); Marker marker = tencentMap.addMarker(new MarkerOptions(latLng).icon(pileDescriptor).alpha(0.9f) .flat(true) .clockwise(false)); removables.add(marker); - FileUtils.writeFile(paperFile.getAbsolutePath(), sb.toString(), true); + } + + + private void startTimer() { + if (timer == null) { + timer = new Timer(); + } + timerTask = new TimerTask() { + @Override + public void run() { + if (type == 3) { + camera.takePicture(); + } else { + Message message = new Message(); + message.what = 0x101; + handler.sendMessage(message); + } + } + }; + if (type==3){ + timer.schedule(timerTask, 0); + }else { + timer.schedule(timerTask, 0, 2000); + } + } + + private void stopTimer() { + if (timer != null) { + timer.cancel(); + timer = null; + } + if (timerTask != null) { + timerTask.cancel(); + timerTask = null; + } } } \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/activity/PoiPictureActivity.java b/app/src/main/java/com/navinfo/outdoor/activity/PoiPictureActivity.java deleted file mode 100644 index f05300c..0000000 --- a/app/src/main/java/com/navinfo/outdoor/activity/PoiPictureActivity.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.navinfo.outdoor.activity; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.appcompat.app.AppCompatActivity; - -import android.os.Bundle; -import android.os.Message; -import android.util.Log; -import android.view.View; -import android.widget.Button; -import android.widget.CheckBox; -import android.widget.Toast; - -import com.navinfo.outdoor.R; -import com.navinfo.outdoor.base.BaseActivity; -import com.otaliastudios.cameraview.CameraException; -import com.otaliastudios.cameraview.CameraListener; -import com.otaliastudios.cameraview.CameraView; -import com.otaliastudios.cameraview.FileCallback; -import com.otaliastudios.cameraview.PictureResult; -import com.otaliastudios.cameraview.VideoResult; - -import org.jetbrains.annotations.NotNull; - -import java.io.File; -import java.util.Objects; - -public class PoiPictureActivity extends BaseActivity implements View.OnClickListener { - - - private CameraView poiPictureCamera; - private android.widget.CheckBox capturePoiPicture; - private android.widget.Button btnStopPoiPicture; - - @Override - protected int getLayout() { - return R.layout.activity_poi_picture; - } - - @Override - protected void initView() { - super.initView(); - poiPictureCamera = (CameraView) findViewById(R.id.poi_picture_camera); - capturePoiPicture = (CheckBox) findViewById(R.id.capture_poi_picture); - capturePoiPicture.setOnClickListener(this::onClick); - btnStopPoiPicture = (Button) findViewById(R.id.btn_stop_poi_picture); - btnStopPoiPicture.setOnClickListener(this::onClick); - poiPictureCamera.setLifecycleOwner(this); - poiPictureCamera.addCameraListener(new CameraListener() {//相机预览监听 - @Override - public void onPictureTaken(@NonNull @NotNull PictureResult result) { - - } - - - @Override - public void onCameraError(@NonNull @NotNull CameraException exception) { - super.onCameraError(exception); - Toast.makeText(PoiPictureActivity.this, exception.toString(), Toast.LENGTH_SHORT).show(); - } - - }); - - } - - @Override - protected void initData() { - super.initData(); - poiPictureCamera.takePicture(); - } - - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.capture_poi_picture: - - break; - - case R.id.btn_stop_poi_picture: - - break; - } - } - - @Override - protected void onResume() { - super.onResume(); - poiPictureCamera.open(); - } - - @Override - protected void onPause() { - super.onPause(); - poiPictureCamera.close(); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - poiPictureCamera.destroy(); - } -} \ No newline at end of file diff --git a/app/src/main/java/com/navinfo/outdoor/api/Constant.java b/app/src/main/java/com/navinfo/outdoor/api/Constant.java index b2e8c94..c331263 100644 --- a/app/src/main/java/com/navinfo/outdoor/api/Constant.java +++ b/app/src/main/java/com/navinfo/outdoor/api/Constant.java @@ -176,7 +176,8 @@ public class Constant { public static MapView treasureMap; public static final String INTENT_VIDEO_PATH = "INTENT_VIDEO_PATH"; // 拍照界面指定的视频文件保存位置 - public static final String INTENT_JPG_PATH = "INTENT_VIDEO_PATH"; // 拍照界面指定的图片保存位置 + public static final String INTENT_JPG_PATH = "INTENT_JPG_PATH"; // 拍照界面指定的图片保存位置 + public static final String INTENT_PHOTO_PATH = "INTENT_PHOTO_PATH"; // 拍照界面指定的图片保存位置 public static final String INTENT_PICTURES_PATH = "INTENT_VIDEO_PATH"; // 拍照界面指定的视频文件保存位置 public static final String INTENT_VIDEO_OBLATION = "INTENT_VIDEO_OBLATION"; // 视频拍摄时屏幕方向 0-强制横屏 其他-任意 diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java index a0c0f94..9018f92 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/OtherFragment.java @@ -43,6 +43,7 @@ import com.lzy.okgo.model.HttpParams; import com.lzy.okgo.model.Response; import com.navinfo.outdoor.R; import com.navinfo.outdoor.activity.FragmentManagement; +import com.navinfo.outdoor.activity.PhotographActivity; import com.navinfo.outdoor.api.Constant; import com.navinfo.outdoor.base.BaseDrawerFragment; import com.navinfo.outdoor.bean.Info; @@ -59,6 +60,7 @@ import com.navinfo.outdoor.room.InsertAndUpdateUtils; import com.navinfo.outdoor.room.PoiDao; import com.navinfo.outdoor.room.PoiDatabase; import com.navinfo.outdoor.room.PoiEntity; +import com.navinfo.outdoor.util.AWMp4ParserHelper; import com.navinfo.outdoor.util.Geohash; import com.navinfo.outdoor.util.PhotoUtils; import com.tencent.tencentmap.mapsdk.maps.TencentMap; @@ -102,7 +104,6 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis private int station_type = 5; private ArrayList otherUploadList; private CheckBox checkPot; - private File file; private Marker markerOther; private Point screenOtherPositions; @@ -192,7 +193,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis checkPot.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - if(checkPot.isChecked()){ + if (checkPot.isChecked()) { moveLatlng(latLng, new TencentMap.CancelableCallback() { @Override public void onFinish() { @@ -217,7 +218,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis checkPot.setChecked(false); } }); - }else { + } else { BitmapDescriptor otherDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_other_bag); markerOther.setIcon(otherDescriptor); checkPot.setText("编辑"); @@ -326,7 +327,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis latLng.setLongitude(Double.parseDouble(x)); latLng.setLatitude(Double.parseDouble(y)); BitmapDescriptor otherDescriptor = BitmapDescriptorFactory.fromResource(R.drawable.marker_other_bag); - markerOther = tencentMap.addMarker(new MarkerOptions(latLng).icon(otherDescriptor) .anchor(0.5f,1.0f)); + markerOther = tencentMap.addMarker(new MarkerOptions(latLng).icon(otherDescriptor).anchor(0.5f, 1.0f)); markerOther.setZIndex(4); moveLatlng(latLng, null); } @@ -367,15 +368,15 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis public void onClick(View v) { switch (v.getId()) { case R.id.rl_picture: - Intent intentPicture = new Intent("android.media.action.IMAGE_CAPTURE"); - file = PhotoUtils.showPhotoFile("a", latLng); - intentPicture.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); + Intent intentPicture = new Intent(getActivity(), PhotographActivity.class); + File file = PhotoUtils.showPhotoFile("a", latLng); + intentPicture.putExtra(Constant.INTENT_PHOTO_PATH, file.getPath()); startActivityForResult(intentPicture, 101); break; case R.id.rl_pictures: - Intent intentPictures = new Intent("android.media.action.IMAGE_CAPTURE"); - file = PhotoUtils.showPhotoFile("b", latLng); - intentPictures.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); + Intent intentPictures = new Intent(getActivity(), PhotographActivity.class); + File files = PhotoUtils.showPhotoFile("b", latLng); + intentPictures.putExtra(Constant.INTENT_PHOTO_PATH, files.getPath()); startActivityForResult(intentPictures, 102); break; case R.id.btn_other_local: @@ -467,7 +468,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis } } - @Override + @Override public void onDenied(List permissions, boolean never) { if (never) { Toast.makeText(getActivity(), "被永久拒绝授权,请手动授予权限", Toast.LENGTH_SHORT).show(); @@ -587,8 +588,6 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis } else { Toast.makeText(getActivity(), "" + poiSaveBean.getMessage(), Toast.LENGTH_SHORT).show(); } - - } @Override @@ -614,7 +613,7 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis //表示文件名,系统将会在/dada/dada/包名/shared_prefs目录下生成 //一个以该参数命名的.xml文件。第二个mode表示创建的模式,通过查看 //方法注释得知,建议以0或者MODE_PRIVATE为默认值。 - SharedPreferences poi = getActivity().getSharedPreferences(Constant.DATA_FILE, 0); + SharedPreferences poi = Objects.requireNonNull(getActivity()).getSharedPreferences(Constant.DATA_FILE, 0); //获取Editor对象 SharedPreferences.Editor edit = poi.edit(); //根据要保存的数据的类型,调用对应的put方法, @@ -623,14 +622,37 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis //以键值对的形式添加新值。 edit.putString("poiEntity", newPoiEntity); //提交新值。必须执行,否则前面的操作都无效。 - edit.commit(); + edit.apply(); Log.d("TAG", "initPoiSharePre: " + newPoiEntity); } @Override public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); - if (requestCode == 101 && resultCode == RESULT_OK) { + if (resultCode == 0x104) { + if (requestCode == 101) { + assert data != null; + String file = data.getStringExtra("file"); + assert file != null; + File videoFile = new File(file); + if (videoFile.exists()) { + AWMp4ParserHelper.getInstance().loadFirstWithGlide(getActivity(), Uri.fromFile(videoFile).toString(), ivPicture, 500); + String andGetPath = PhotoUtils.showPhotoAndGetPath(videoFile, ivPicture); + tvPicture.setTag(andGetPath); + } + } else if (requestCode == 102) { + assert data != null; + String file = data.getStringExtra("file"); + assert file != null; + File videoFile = new File(file); + if (videoFile.exists()) { + AWMp4ParserHelper.getInstance().loadFirstWithGlide(getActivity(), Uri.fromFile(videoFile).toString(), ivPictures, 500); + String andGetPath = PhotoUtils.showPhotoAndGetPath(videoFile, ivPictures); + tvPictures.setTag(andGetPath); + } + } + } + /* if (requestCode == 101 && resultCode == RESULT_OK) { if (file == null || !file.exists()) { Toast.makeText(getActivity(), "没有拍摄照片", Toast.LENGTH_SHORT).show(); return; @@ -650,23 +672,24 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis tvPictures.setTag(s); } file = null; - } + }*/ } + @Override public void onDestroyView() { super.onDestroyView(); if (showPoiEntity != null) { if (showPoiEntity.getTaskStatus() == 5) { initEndReceiveTask(HttpInterface.UNRECEIVED_POLYGON_TASK, showPoiEntity); - }else { + } else { Message obtain = Message.obtain(); obtain.what = Constant.JOB_WORD_MONITOR; obtain.obj = true; EventBus.getDefault().post(obtain); } - } } + @Override public void onDestroy() { if (EventBus.getDefault().isRegistered(this))//加上判断 @@ -676,7 +699,8 @@ public class OtherFragment extends BaseDrawerFragment implements View.OnClickLis markerOther.remove(); } } - private void initEndReceiveTask(String url,PoiEntity poiEntity) { + + private void initEndReceiveTask(String url, PoiEntity poiEntity) { if (poiEntity.getTaskId() == 0) { Toast.makeText(getActivity(), "无此任务", Toast.LENGTH_SHORT).show(); return; diff --git a/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java b/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java index 89dd3ac..599c03c 100644 --- a/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java +++ b/app/src/main/java/com/navinfo/outdoor/fragment/PoiVideoFragment.java @@ -73,6 +73,7 @@ import java.util.Objects; */ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClickListener { + private TextView tvPictures; private EditText etRoadName; private ImageView ivPoiVideoPicture; @@ -147,39 +148,37 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick super.initView(); PoiDatabase poiDatabase = PoiDatabase.getInstance(getContext()); poiDao = poiDatabase.getPoiDao(); - tvPictures = (TextView) findViewById(R.id.tv_pictures);//拍照 + tvPictures = findViewById(R.id.tv_pictures);//拍照 tvPictures.setOnClickListener(this); - tvPicture = (TextView) findViewById(R.id.tv_picture);//录像 + tvPicture = findViewById(R.id.tv_picture);//录像 tvPicture.setOnClickListener(this); setSlidingUpPanelLayout(Constant.SLIDING_LAYOUT); NestedScrollView nestedScrollView = findViewById(R.id.nested_scroll_view); if (slidingPaneLayout != null) { slidingPaneLayout.setScrollableView(nestedScrollView); } - etRoadName = (EditText) findViewById(R.id.et_poi_video_name); - ivPoiVideoPicture = (ImageView) findViewById(R.id.iv_poi_video_picture); - - etDesc = (EditText) findViewById(R.id.et_desc); + etRoadName = findViewById(R.id.et_poi_video_name); + ivPoiVideoPicture = findViewById(R.id.iv_poi_video_picture); + etDesc = findViewById(R.id.et_desc); fmPoiVideoPic = findViewById(R.id.fm_poi_video_picture); - btnRoadSave = (Button) findViewById(R.id.btn_poi_video_save); + btnRoadSave = findViewById(R.id.btn_poi_video_save); btnRoadSave.setOnClickListener(this); Button btnPoiVideoUpload = findViewById(R.id.btn_poi_video_upload); btnPoiVideoUpload.setOnClickListener(this); - rgType = (RadioGroup) findViewById(R.id.rg_type); + rgType = findViewById(R.id.rg_type); rbCar = findViewById(R.id.rb_car); rbBicycle = findViewById(R.id.rb_bicycle); rbWalking = findViewById(R.id.rb_walking); rbManual = findViewById(R.id.rb_manual); tvPhotoAlbum = findViewById(R.id.tv_photo_album); tvPhotoAlbum.setOnClickListener(this); - /*fmRoadPic.setOnClickListener(new View.OnClickListener() { + /*fmRoadPic.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (v.getTag() == null || ((List) v.getTag()).size() == 0) { Toast.makeText(getActivity(), "还没有拍摄视频!", Toast.LENGTH_SHORT).show(); return; } - File finalFile = AWMp4ParserHelper.getInstance().obtainMp4FilePath(new File(Constant.PICTURE_FOLDER, showPoiEntity.getId()).getAbsolutePath()); Intent intent = new Intent(getContext(), PictureActivity.class); intent.putExtra(Constant.INTENT_VIDEO_PATH, finalFile.getAbsolutePath()); @@ -188,11 +187,9 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick startActivityForResult(intent, 0x101); } });*/ - rgType.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { - switch (checkedId) { case R.id.rb_car: case R.id.rb_bicycle: @@ -515,7 +512,6 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick Toast.makeText(getActivity(), "没有申请权限,请手动申请", Toast.LENGTH_SHORT).show(); } } - @Override public void onDenied(List permissions, boolean never) { if (never) { @@ -668,13 +664,11 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick } else if (requestCode == 0x102 && resultCode == 0x102) { tvPicture.setEnabled(false); isRequest = 0x102; - if (data != null && data.hasExtra(Constant.INTENT_PICTURES_PATH)) { int type = data.getIntExtra("type", 0); if (type == 3) { showWorkType(type); } - String videoPath = data.getStringExtra(Constant.INTENT_PICTURES_PATH); assert videoPath != null; File pictureFile = new File(videoPath); @@ -692,7 +686,6 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick super.onSaveInstanceState(outState); initPoiVideoSharePre(); } - /** * 防止程序崩溃后数据丢失 */ @@ -714,7 +707,6 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick Log.d("TAG", "initRoadSharePre: " + newPoiEntity); } - //获取拍照类型 private int getPictureType() { if (rbCar != null && rbCar.isChecked()) { @@ -743,7 +735,6 @@ public class PoiVideoFragment extends BaseDrawerFragment implements View.OnClick case 3: rbManual.setChecked(true); break; - } } diff --git a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java index 3a75e25..da775ff 100644 --- a/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java +++ b/app/src/main/java/com/navinfo/outdoor/http/HttpInterface.java @@ -3,9 +3,9 @@ package com.navinfo.outdoor.http; import com.navinfo.outdoor.api.Constant; public class HttpInterface { - public static final String IP_TEST = "http://dtxbmaps.navinfo.com/dtxb/m4";//正式接口 + public static final String IP = "http://dtxbmaps.navinfo.com/dtxb/m4";//正式接口 public static final String DATA_IP = "http://172.23.139.4:9999/m4";//接口 - public static final String IP = "http://dtxbmaps.navinfo.com/dtxb_test/m4";//测试接口 + public static final String IP_TASK = "http://dtxbmaps.navinfo.com/dtxb_test/m4";//测试接口 public static final String TEST_GUIDANCE_IP = "http://172.21.98.90:9999/m4";//引导页完成接口 public static final String APKIP = "http://172.23.139.4:8001/"; diff --git a/app/src/main/res/layout/activity_photograph.xml b/app/src/main/res/layout/activity_photograph.xml new file mode 100644 index 0000000..06a9365 --- /dev/null +++ b/app/src/main/res/layout/activity_photograph.xml @@ -0,0 +1,38 @@ + + + + + +