forked from upstream-mirrors/OpenTracks
Minor fixes.
This commit is contained in:
@@ -4,6 +4,7 @@
|
||||
<classpathentry kind="lib" path="libs/googleloginclient-helper.jar"/>
|
||||
<classpathentry kind="lib" path="libs/google-common.jar"/>
|
||||
<classpathentry kind="lib" path="libs/accounts.jar"/>
|
||||
<classpathentry kind="lib" path="libs/protobuf-java-2.3.0-lite.jar"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="src" path="gen"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 358 B After Width: | Height: | Size: 1.8 KiB |
@@ -63,100 +63,47 @@ limitations under the License.
|
||||
style="@style/StatsRegister" />
|
||||
</TableRow>
|
||||
|
||||
<!-- Power meter status -->
|
||||
<TableRow
|
||||
android:padding="1dip">
|
||||
<CheckBox android:id="@+id/power_meter_enabled"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/power_meter_enabled"
|
||||
android:checked="true"
|
||||
android:enabled="false"
|
||||
android:layout_column="1"
|
||||
android:layout_span="3" />
|
||||
<TextView
|
||||
android:id="@+id/power_meter_state_register"
|
||||
android:textSize="20dip"
|
||||
android:gravity="right"
|
||||
android:layout_column="4"
|
||||
android:layout_span="2"
|
||||
android:text="@string/unknown" />
|
||||
</TableRow>
|
||||
|
||||
<!-- Power and Cadence -->
|
||||
<!-- Power meter -->
|
||||
<TableRow
|
||||
android:padding="1dip">
|
||||
<TextView
|
||||
android:id="@+id/power_label"
|
||||
android:textSize="20dip"
|
||||
android:layout_column="1"
|
||||
android:layout_span="3"
|
||||
android:text="@string/power" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:background="@color/stat_label_background">
|
||||
<TextView
|
||||
android:id="@+id/cadence_label"
|
||||
android:layout_column="4"
|
||||
android:layout_span="2"
|
||||
style="@style/StatsRegister.Big"
|
||||
android:id="@+id/power_state_register"
|
||||
android:layout_column="1"
|
||||
android:layout_span="4" />
|
||||
<TextView
|
||||
style="@style/StatsUnitSolo" />
|
||||
android:layout_column="5"
|
||||
android:text="@string/watts" />
|
||||
</TableRow>
|
||||
|
||||
<!-- Cadence -->
|
||||
<TableRow
|
||||
android:padding="1dip">
|
||||
<TextView
|
||||
android:layout_column="1"
|
||||
android:layout_span="3"
|
||||
android:text="@string/cadence" />
|
||||
</TableRow>
|
||||
<TableRow
|
||||
android:background="@color/stat_label_background">
|
||||
<TextView
|
||||
android:gravity="right"
|
||||
android:id="@+id/power_state_register"
|
||||
android:layout_column="1"
|
||||
android:layout_marginBottom="-9dip"
|
||||
android:layout_marginTop="-9dip"
|
||||
android:text="@string/unknown"
|
||||
android:textColor="@color/stat_label_text"
|
||||
android:textSize="40sp" />
|
||||
<TextView
|
||||
android:gravity="left"
|
||||
android:layout_column="2"
|
||||
android:layout_marginBottom="-9dip"
|
||||
android:layout_marginTop="-9dip"
|
||||
android:text="@string/watts"
|
||||
android:textColor="@color/stat_label_text" />
|
||||
<TextView
|
||||
android:background="@color/black"
|
||||
android:layout_column="3"
|
||||
android:layout_marginBottom="-9dip"
|
||||
android:layout_marginTop="-9dip"
|
||||
android:layout_width="5dip"
|
||||
android:textSize="40sp" />
|
||||
<TextView
|
||||
android:gravity="right"
|
||||
style="@style/StatsRegister.Big"
|
||||
android:id="@+id/cadence_state_register"
|
||||
android:layout_column="4"
|
||||
android:layout_marginBottom="-9dip"
|
||||
android:layout_marginTop="-9dip"
|
||||
android:text="@string/unknown"
|
||||
android:textColor="@color/stat_label_text"
|
||||
android:textSize="40sp" />
|
||||
android:layout_column="4" />
|
||||
<TextView
|
||||
android:gravity="left"
|
||||
style="@style/StatsUnitSolo" />
|
||||
android:layout_column="2"
|
||||
android:layout_marginBottom="-9dip"
|
||||
android:layout_marginTop="-9dip"
|
||||
android:text="@string/revolutions_per_minute"
|
||||
android:textColor="@color/stat_label_text" />
|
||||
</TableRow>
|
||||
|
||||
<!-- Heart rate monitor -->
|
||||
<TableRow>
|
||||
<CheckBox android:id="@+id/heart_rate_monitor_enabled"
|
||||
android:layout_width="fill_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/heart_rate_monitor_enabled"
|
||||
android:checked="true"
|
||||
android:enabled="false"
|
||||
android:layout_column="1"
|
||||
android:layout_span="3" />
|
||||
<TextView
|
||||
android:id="@+id/heart_rate_monitor_state_register"
|
||||
android:gravity="right"
|
||||
android:textSize="20dip"
|
||||
android:layout_column="4"
|
||||
android:layout_span="2"
|
||||
android:text="@string/unknown" />
|
||||
android:text="@string/revolutions_per_minute" />
|
||||
</TableRow>
|
||||
|
||||
<!-- Heart Rate -->
|
||||
@@ -170,14 +117,14 @@ limitations under the License.
|
||||
<TableRow
|
||||
android:background="@color/stat_label_background">
|
||||
<TextView
|
||||
style="@style/StatsRegister.Big"
|
||||
android:id="@+id/heart_rate_register"
|
||||
android:layout_column="1"
|
||||
android:layout_span="4"
|
||||
style="@style/StatsRegister" />
|
||||
android:layout_span="4" />
|
||||
<TextView
|
||||
style="@style/StatsUnitSolo"
|
||||
android:layout_column="5"
|
||||
android:text="@string/bpm"
|
||||
style="@style/StatsUnitSolo" />
|
||||
android:text="@string/bpm" />
|
||||
</TableRow>
|
||||
|
||||
</TableLayout>
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
android:title="@string/aggregated_stats"/>
|
||||
|
||||
<item android:id="@+id/menu_sensor_state"
|
||||
android:icon="@drawable/menu_sensor_status"
|
||||
android:orderInCategory="1000"
|
||||
android:title="@string/sensor_state"/>
|
||||
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
*/
|
||||
package com.google.android.apps.mytracks;
|
||||
|
||||
import static com.google.android.apps.mytracks.MyTracksConstants.TAG;
|
||||
import com.google.android.apps.mytracks.content.Sensor;
|
||||
import com.google.android.apps.mytracks.services.ITrackRecordingService;
|
||||
import com.google.android.apps.mytracks.services.sensors.SensorUtils;
|
||||
@@ -25,7 +26,6 @@ import android.app.Activity;
|
||||
import android.os.Bundle;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Log;
|
||||
import android.widget.CheckBox;
|
||||
import android.widget.TextView;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
@@ -69,11 +69,13 @@ public class SensorStateActivity extends Activity {
|
||||
|
||||
public SensorStateActivity() {
|
||||
utils = new StatsUtilities(this);
|
||||
Log.w(TAG, "SensorStateActivity()");
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
Log.w(TAG, "SensorStateActivity.onCreate");
|
||||
|
||||
setContentView(R.layout.sensor_state);
|
||||
|
||||
@@ -98,7 +100,8 @@ public class SensorStateActivity extends Activity {
|
||||
protected void updateState() {
|
||||
MyTracks mt = MyTracks.getInstance();
|
||||
|
||||
ITrackRecordingService service = mt.getTrackRecordingService();
|
||||
ITrackRecordingService service =
|
||||
mt == null ? null : mt.getTrackRecordingService();
|
||||
if (service == null) {
|
||||
Log.d(MyTracksConstants.TAG, "Could not get track recording service.");
|
||||
updateSensorState(Sensor.SensorState.NONE);
|
||||
@@ -134,21 +137,12 @@ public class SensorStateActivity extends Activity {
|
||||
sensorTime.setText(SensorUtils.getStateAsString(state, this));
|
||||
}
|
||||
|
||||
private void updateSensorData(Sensor.SensorDataSet sds) {
|
||||
CheckBox heartRateMonitor =
|
||||
(CheckBox) findViewById(R.id.heart_rate_monitor_enabled);
|
||||
CheckBox powerMeter =
|
||||
(CheckBox) findViewById(R.id.power_meter_enabled);
|
||||
protected void updateSensorData(Sensor.SensorDataSet sds) {
|
||||
if (sds == null) {
|
||||
utils.setUnknown(R.id.sensor_data_time_register);
|
||||
utils.setUnknown(R.id.cadence_state_register);
|
||||
utils.setUnknown(R.id.power_state_register);
|
||||
utils.setUnknown(R.id.power_meter_state_register);
|
||||
powerMeter.setChecked(false);
|
||||
|
||||
utils.setUnknown(R.id.heart_rate_register);
|
||||
utils.setUnknown(R.id.heart_rate_monitor_state_register);
|
||||
heartRateMonitor.setChecked(false);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -156,46 +150,44 @@ public class SensorStateActivity extends Activity {
|
||||
((TextView) findViewById(R.id.sensor_data_time_register));
|
||||
sensorTime.setText(
|
||||
TIMESTAMP_FORMAT.format(new Date(sds.getCreationTime())));
|
||||
/*
|
||||
sensorTime.setTextColor(sd.isValid()
|
||||
? R.color.stat_label_text
|
||||
: R.color.red);
|
||||
*/
|
||||
|
||||
utils.setText(R.id.power_meter_state_register,
|
||||
SensorUtils.getStateAsString(
|
||||
sds.hasPower()
|
||||
? sds.getPower().getState()
|
||||
: Sensor.SensorState.NONE,
|
||||
this));
|
||||
boolean power = sds.hasPower() && sds.getPower().hasValue();
|
||||
powerMeter.setChecked(power);
|
||||
if (power) {
|
||||
utils.setText(R.id.power_state_register, "" + sds.getPower().getValue());
|
||||
if (sds.hasPower() && sds.getPower().hasValue()
|
||||
&& sds.getPower().getState() == Sensor.SensorState.SENDING) {
|
||||
utils.setText(R.id.power_state_register,
|
||||
Integer.toString(sds.getPower().getValue()));
|
||||
} else {
|
||||
utils.setUnknown(R.id.power_state_register);
|
||||
utils.setText(R.id.power_state_register,
|
||||
SensorUtils.getStateAsString(
|
||||
sds.hasPower()
|
||||
? sds.getPower().getState()
|
||||
: Sensor.SensorState.NONE,
|
||||
this));
|
||||
}
|
||||
|
||||
boolean cadence = sds.hasCadence() && sds.getCadence().hasValue();
|
||||
if (cadence) {
|
||||
if (sds.hasCadence() && sds.getCadence().hasValue()
|
||||
&& sds.getCadence().getState() == Sensor.SensorState.SENDING) {
|
||||
utils.setText(R.id.cadence_state_register,
|
||||
Integer.toString(sds.getCadence().getValue()));
|
||||
} else {
|
||||
utils.setUnknown(R.id.cadence_state_register);
|
||||
utils.setText(R.id.cadence_state_register,
|
||||
SensorUtils.getStateAsString(
|
||||
sds.hasCadence()
|
||||
? sds.getCadence().getState()
|
||||
: Sensor.SensorState.NONE,
|
||||
this));
|
||||
}
|
||||
|
||||
boolean heartRate = sds.hasHeartRate() && sds.getHeartRate().hasValue();
|
||||
heartRateMonitor.setChecked(heartRate);
|
||||
utils.setText(R.id.heart_rate_monitor_state_register,
|
||||
SensorUtils.getStateAsString(
|
||||
sds.hasHeartRate()
|
||||
? sds.getHeartRate().getState()
|
||||
: Sensor.SensorState.NONE,
|
||||
this));
|
||||
if (heartRate) {
|
||||
utils.setText(R.id.heart_rate_register, "" + sds.getHeartRate().getValue());
|
||||
if (sds.hasHeartRate() && sds.getHeartRate().hasValue()
|
||||
&& sds.getHeartRate().getState() == Sensor.SensorState.SENDING) {
|
||||
utils.setText(R.id.heart_rate_register,
|
||||
Integer.toString(sds.getHeartRate().getValue()));
|
||||
} else {
|
||||
utils.setUnknown(R.id.heart_rate_register);
|
||||
utils.setText(R.id.heart_rate_register,
|
||||
SensorUtils.getStateAsString(
|
||||
sds.hasHeartRate()
|
||||
? sds.getHeartRate().getState()
|
||||
: Sensor.SensorState.NONE,
|
||||
this));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1044,33 +1044,33 @@ public class TrackRecordingService extends Service implements LocationListener {
|
||||
}
|
||||
service.onLocationChanged(loc);
|
||||
}
|
||||
@Override
|
||||
public byte[] getSensorData() {
|
||||
if (service.sensorManager == null) {
|
||||
Log.d(MyTracksConstants.TAG, "No sensor manager for data.");
|
||||
return null;
|
||||
}
|
||||
if (service.sensorManager.getSensorDataSet() == null) {
|
||||
Log.d(MyTracksConstants.TAG, "Sensor data set is null.");
|
||||
return null;
|
||||
}
|
||||
return service.sensorManager.getSensorDataSet().toByteArray();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSensorState() {
|
||||
if (service.sensorManager == null) {
|
||||
Log.d(MyTracksConstants.TAG, "No sensor manager for data.");
|
||||
return Sensor.SensorState.NONE.getNumber();
|
||||
}
|
||||
return service.sensorManager.getSensorState().getNumber();
|
||||
}
|
||||
@Override
|
||||
public byte[] getSensorData() {
|
||||
if (service.sensorManager == null) {
|
||||
Log.d(MyTracksConstants.TAG, "No sensor manager for data.");
|
||||
return null;
|
||||
}
|
||||
if (service.sensorManager.getSensorDataSet() == null) {
|
||||
Log.d(MyTracksConstants.TAG, "Sensor data set is null.");
|
||||
return null;
|
||||
}
|
||||
return service.sensorManager.getSensorDataSet().toByteArray();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSensorState() {
|
||||
if (service.sensorManager == null) {
|
||||
Log.d(MyTracksConstants.TAG, "No sensor manager for data.");
|
||||
return Sensor.SensorState.NONE.getNumber();
|
||||
}
|
||||
return service.sensorManager.getSensorState().getNumber();
|
||||
}
|
||||
}
|
||||
|
||||
public long startNewTrack() {
|
||||
Log.d(MyTracksConstants.TAG, "TrackRecordingService.startNewTrack");
|
||||
if (recordingTrackId != -1 || isRecording) {
|
||||
throw new IllegalStateException("A track is already in progress!");
|
||||
if (recordingTrackId != -1 || isRecording) { throw new IllegalStateException("A track is already in progress!");
|
||||
}
|
||||
|
||||
long startTime = System.currentTimeMillis();
|
||||
@@ -1138,6 +1138,11 @@ public class TrackRecordingService extends Service implements LocationListener {
|
||||
}
|
||||
showNotification();
|
||||
prefManager.setRecordingTrack(recordingTrackId = -1);
|
||||
|
||||
if (sensorManager != null) {
|
||||
sensorManager.shutdown();
|
||||
}
|
||||
|
||||
releaseWakeLock();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry combineaccessrules="false" kind="src" path="/MyTracks"/>
|
||||
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="src" path="gen"/>
|
||||
<classpathentry kind="lib" path="libs/AndroidMockRuntime.jar"/>
|
||||
<classpathentry kind="src" path=".apt_generated">
|
||||
<attributes>
|
||||
<attribute name="optional" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry combineaccessrules="false" kind="src" path="/MyTracks"/>
|
||||
<classpathentry kind="src" path="src"/>
|
||||
<classpathentry kind="src" path="gen"/>
|
||||
<classpathentry kind="lib" path="libs/AndroidMockRuntime.jar"/>
|
||||
<classpathentry kind="lib" path="libs/protobuf-java-2.3.0-lite.jar"/>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
|
||||
@@ -6,7 +6,6 @@ import com.google.android.apps.mytracks.content.Sensor;
|
||||
import com.google.android.apps.mytracks.content.Track;
|
||||
import com.google.android.apps.mytracks.content.Waypoint;
|
||||
|
||||
import android.location.Location;
|
||||
import android.test.AndroidTestCase;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
|
||||
Reference in New Issue
Block a user