Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 10 additions & 4 deletions modulesCore/main/src/main/debug/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.modulescore.main" >
package="com.example.modulescore.main">
<!-- 允许访问网络,必选权限 -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- 允许获取精确位置,精准定位必选 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- 允许获取粗略位置,粗略定位必选 -->
Expand All @@ -17,13 +17,16 @@
tools:ignore="ProtectedPermissions" /> <!-- 允许写入扩展存储,用于写入缓存定位数据 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 允许读设备等信息,用于问题排查 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

<uses-permission android:name="android.permission.WAKE_LOCK" />.
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true" >
android:supportsRtl="true">
<activity
android:name=".Trace.TraceActivity"
android:exported="false" />
<activity
android:name=".Activities.AfterRunActivity"
android:exported="false" />
Expand All @@ -33,9 +36,10 @@
<activity
android:name=".Activities.PreRunActivity"
android:exported="true"
android:launchMode="singleTask" >
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Expand All @@ -47,9 +51,11 @@
android:name=".Activities.RunningActivity"
android:exported="true"
android:launchMode="singleInstance" />

<meta-data
android:name="com.amap.api.v2.apikey"
android:value="50d286f11504bd091ccc96099bcba9cb" />

<service android:name="com.amap.api.location.APSService" />
</application>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,14 @@ private void myRequestPermissions(){
//申请WRITE_EXTERNAL_STORAGE权限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
WRITE_COARSE_LOCATION_REQUEST_CODE);
} else if(ContextCompat.checkSelfPermission(this, Manifest.permission.WAKE_LOCK)
!= PackageManager.PERMISSION_GRANTED){
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WAKE_LOCK},
WRITE_COARSE_LOCATION_REQUEST_CODE);
}else if(ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE)
!= PackageManager.PERMISSION_GRANTED){
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
WRITE_COARSE_LOCATION_REQUEST_CODE);
}
}
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
package com.example.modulescore.main.Activities;

import android.Manifest;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
Expand All @@ -20,12 +18,10 @@
import androidx.appcompat.app.AppCompatActivity;
import androidx.cardview.widget.CardView;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;

import com.amap.api.maps.model.LatLng;
import com.example.modulescore.main.DataBase.MyDataBase;
import com.example.modulescore.main.DataBase.RunningRecord;
import com.example.modulespublic.common.base.MyDataBase;
import com.example.modulespublic.common.base.RunningRecord;
import com.example.modulescore.main.EventBus.MessageEvent;
import com.example.modulescore.main.UI.View.ProgressButton;
import com.example.modulescore.main.R;
Expand All @@ -38,6 +34,7 @@
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;

import java.util.Date;
import java.util.List;

public class RunActivity extends AppCompatActivity implements View.OnClickListener {
Expand All @@ -55,6 +52,8 @@ public class RunActivity extends AppCompatActivity implements View.OnClickListen
RunningRecord record = new RunningRecord();
TextView calorieText;
List<LatLng> mPathPointsLine;
Date startTime;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand Down Expand Up @@ -88,24 +87,23 @@ protected void onCreate(Bundle savedInstanceState) {
public void onFinish() {
final String TAG = "FINISH_RUNNING";
Log.d(TAG,"start finish");
//record.setId(Long.valueOf(001));
record.setUserId("1");
record.setCalorie((String) calorieText.getText());
record.setDistance( distanceview.getText());
Log.d(TAG,passedSeconds.toString());
record.setRunningtime(passedSeconds);
Log.d(TAG,"0");
record.setSpeed((String) speedText.getText());
Log.d(TAG,"1");
record.setPathPointsLine(mPathPointsLine);
Log.d(TAG,"2");
record.setStartTime(startTime);
new Thread(new Runnable() {
@Override
public void run() {
MyDataBase.getsInstance(getApplicationContext()).runningDao().insertRunningRecord(record);
Log.d(TAG,record.toString());
Log.d(TAG,MyDataBase.getsInstance(getApplicationContext()).runningDao().loadAllRunningRecordss().toString());
Log.d(TAG+"length", String.valueOf(MyDataBase.getsInstance(getApplicationContext()).runningDao().loadAllRunningRecordss().length));
}
}).start();
Log.d(TAG,"finish finish");
finish();
}

Expand Down Expand Up @@ -231,6 +229,9 @@ record = event.getRunningRecord();
if(event.getmPathPointsLine()!=null){
mPathPointsLine = event.getmPathPointsLine();
}
if(event.getStartTime()!=null){
startTime = event.getStartTime();
}
};
@Override
protected void onDestroy() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
import com.amap.api.maps.model.LatLng;
import com.amap.api.maps.model.MyLocationStyle;
import com.amap.api.maps.model.PolylineOptions;
import com.example.modulescore.main.DataBase.RunningRecord;
import com.example.modulespublic.common.base.RunningRecord;
import com.example.modulescore.main.EventBus.MessageEvent;
import com.example.modulescore.main.R;
import com.example.modulescore.main.Util.TimeManager;
Expand Down Expand Up @@ -80,6 +80,8 @@ public class RunningActivity extends AppCompatActivity implements LocationSource
int weight = 60;
RunningRecord record = new RunningRecord();
private DecimalFormat decimalFormat = new DecimalFormat("0.00");
MessageEvent messageEvent = new MessageEvent();//跑步时间

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Expand All @@ -103,9 +105,9 @@ public void onClick(View view) {
tv_mapDistance = findViewById(R.id.distanceTicker);
tv_mapDistance.setCharacterLists(TickerUtils.provideNumberList());
tv_mapDistance.setAnimationDuration(500);

initMapUI();
initLoc();
messageEvent.setStartTime(startTime);
Intent startRunIntent = new Intent(this,RunActivity.class);
startActivity(startRunIntent);
if(getIntent().getType()!= null && getIntent().getType().equals(TargetDistanceActivity.isTarget)){
Expand Down Expand Up @@ -188,8 +190,6 @@ private void initLoc() {
@Override
public void onLocationChanged(AMapLocation amapLocation) {
String TAG = "RunningActivity_LocationChanged";
MessageEvent messageEvent = new MessageEvent();//跑步时间
Log.d(TAG,"");
if (amapLocation != null) {
if (amapLocation.getErrorCode() == 0) {
float nowSpeed = amapLocation.getSpeed();
Expand Down Expand Up @@ -230,13 +230,13 @@ public void onLocationChanged(AMapLocation amapLocation) {
}else if(isFirstLoc){//如果是第一次,那么改isFirstLoc为false,则之后都不是第一次了
//设置缩放级别
Log.d(TAG,"FirstLoc");
aMap.moveCamera(CameraUpdateFactory.zoomTo(18));
aMap.moveCamera(CameraUpdateFactory.changeTilt(0));
aMap.moveCamera(CameraUpdateFactory.zoomTo(18));//设置地图缩放级别。
aMap.moveCamera(CameraUpdateFactory.changeTilt(0));//设置地图倾斜度。
isFirstLoc = false;
Log.d(TAG,"FirstLoc0");
}
//将地图移动到定位点
aMap.moveCamera(CameraUpdateFactory.changeLatLng(nowLatLng));
aMap.moveCamera(CameraUpdateFactory.changeLatLng(nowLatLng));//设置地图的中心点。
//点击定位按钮 能够将地图的中心移动到定位点
mListener.onLocationChanged(amapLocation);
Log.d(TAG,"FirstLoc00");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,6 @@ public void onConfigureTab(@NonNull TabLayout.Tab tab, int position) {
tab.setText(tabs[position]);
}
}).attach();

btn_back.setOnClickListener(this);
startDistanceRunView.setOnClickListener(this);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@


import com.amap.api.maps.model.LatLng;
import com.example.modulescore.main.DataBase.RunningRecord;
import com.example.modulespublic.common.base.RunningRecord;

import java.util.Date;
import java.util.List;

public class MessageEvent {
Expand All @@ -13,6 +14,15 @@ public class MessageEvent {
private RunningRecord runningRecord;
private String calorie;
private List<LatLng> mPathPointsLine;
private Date startTime;

public Date getStartTime() {
return startTime;
}

public void setStartTime(Date startTime) {
this.startTime = startTime;
}

public List<LatLng> getmPathPointsLine() {
return mPathPointsLine;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package com.example.modulescore.main.Pre;

import android.content.Intent;
import android.os.Bundle;

import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;

import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.util.Log;
Expand All @@ -15,12 +14,15 @@
import android.widget.LinearLayout;
import android.widget.TextView;

import com.example.modulescore.main.DataBase.MyDataBase;
import com.example.modulescore.main.DataBase.RunningRecord;
import com.example.modulespublic.common.base.MyDataBase;
import com.example.modulespublic.common.base.RunningRecord;
import com.example.modulescore.main.R;
import com.example.modulescore.main.Trace.TraceActivity;
import com.example.modulescore.main.Util.TimeManager;

public class PreDataFragment extends Fragment {
import java.text.SimpleDateFormat;

public class PreDataFragment extends Fragment implements View.OnClickListener{
public PreDataFragment() {
}
LinearLayout linearLayout;
Expand All @@ -35,17 +37,16 @@ public void onCreate(Bundle savedInstanceState) {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final String TAG = "PreDataFragmentonCreateViewTAG";

// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_pre_data, container, false);
View view = inflater.inflate(R.layout.pre_data_item0, container, false);
linearLayout = view.findViewById(R.id.linearlayout_pre_data);
Handler handler = new Handler(Looper.getMainLooper()){
@Override
public void handleMessage(@NonNull Message msg) {
super.handleMessage(msg);
RefreshDataItem();
}
};
QueryAllRunningRecords();
return view;
}

private void QueryAllRunningRecords(){
final String TAG = "QueryAllRunningRecordsTAG";
new Thread(new Runnable() {
@Override
public void run() {
Expand All @@ -56,9 +57,7 @@ public void run() {
preHandler.sendMessage(message);
}
}).start();
return view;
}

public void RefreshDataItem(){
final String TAG = "RefreshDataItem";
Log.d(TAG, String.valueOf(runningRecords.length));
Expand All @@ -72,12 +71,33 @@ private void LinearAddView(RunningRecord record){
TextView distancetext = view.findViewById(R.id.distancetext_runrecord);
TextView durationtext = view.findViewById(R.id.duration_text_runrecorditem);
TextView calorietext = view.findViewById(R.id.calorietext_runrecoritem);
//startTimetext.setText(TimeManager.formatseconds(record.getStartTime()));
distancetext.setText(record.getDistance());
TextView speedtext = view.findViewById(R.id.speedtext_runrecoritem);
TextView recordDateText = view.findViewById(R.id.runrecord_Date);
SimpleDateFormat yearFormat = new SimpleDateFormat ("yyyy年");
SimpleDateFormat dateFormat = new SimpleDateFormat ("MM月dd日");
SimpleDateFormat minuteFormat = new SimpleDateFormat ("hh:mm");
recordDateText.setText(dateFormat.format(record.getStartTime()));
startTimetext.setText(minuteFormat.format(record.getStartTime()));
distancetext.setText(record.getDistance()+","+record.getId());
durationtext.setText(TimeManager.formatseconds(record.getRunningtime()));
calorietext.setText(record.getCalorie());
speedtext.setText(record.getSpeed());
linearLayout.addView(view);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getActivity(), TraceActivity.class);
intent.setType(String.valueOf(record.getId()));
startActivity(intent);
}
});
Log.d("LinearAddView","FINISH");
}

@Override
public void onClick(View view) {
switch (view.getId()){

}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,8 @@
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Rect;
import android.util.AttributeSet;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;

Expand All @@ -16,6 +14,7 @@
import androidx.recyclerview.widget.RecyclerView;

import com.example.modulescore.main.R;
import com.example.modulescore.main.Util.ScreenUtil;

public class ScrollPickerView extends RecyclerView {
//
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ public int getItemViewType(int position) {
}
return 0;
}

public int getViewPagerPostion() {
return viewPagerPostion;
}
Expand Down
Loading