upload android base code part7

This commit is contained in:
August 2018-08-08 18:09:17 +08:00
parent 4e516ec6ed
commit 841ae54672
25229 changed files with 1709508 additions and 0 deletions

View file

@ -0,0 +1,6 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.wearable.speedtracker.common">
<application android:allowBackup="true"/>
</manifest>

View file

@ -0,0 +1,30 @@
/*
* Copyright (C) 2014 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.example.android.wearable.speedtracker.common;
/**
* A collection of constants that is shared between teh wearable and handset apps.
*/
public class Constants {
public static final String PATH = "/location";
public static final String KEY_LONGITUDE = "lng";
public static final String KEY_LATITUDE = "lat";
public static final String KEY_TIME = "time";
private Constants() {}
}

View file

@ -0,0 +1,61 @@
/*
* Copyright (C) 2014 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.example.android.wearable.speedtracker.common;
import java.util.Calendar;
/**
* A class that models a GPS location point with additional information about the time that the data
* was obtained.
*/
public class LocationEntry {
public double latitude;
public double longitude;
public Calendar calendar;
public String day;
public LocationEntry(Calendar calendar, double latitude, double longitude) {
this.calendar = calendar;
this.latitude = latitude;
this.longitude = longitude;
this.day = Utils.getHashedDay(calendar);
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
LocationEntry that = (LocationEntry) o;
if (calendar.getTimeInMillis() != that.calendar.getTimeInMillis()) {
return false;
}
return true;
}
@Override
public int hashCode() {
return calendar.hashCode();
}
}

View file

@ -0,0 +1,37 @@
/*
* Copyright (C) 2014 Google Inc. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.example.android.wearable.speedtracker.common;
import java.util.Calendar;
/**
* A utility class that is used in both the handset and wearable apps.
*/
public class Utils {
/**
* Builds a simple hash for a day by concatenating year and day of year together. Note that two
* {@link java.util.Calendar} inputs that fall on the same day will be hashed to the same
* string.
*/
public static String getHashedDay(Calendar day) {
return day.get(Calendar.YEAR) + "-" + day.get(Calendar.DAY_OF_YEAR);
}
private Utils() {
}
}