├── .gitignore ├── 22.gif ├── HeartRate ├── .classpath ├── .project ├── .settings │ └── org.eclipse.jdt.core.prefs ├── Android.mk ├── AndroidManifest.xml ├── HeartRate.iml ├── assets │ └── fonts │ │ └── CODE_Light.otf ├── build.gradle ├── ic_launcher-web.png ├── libs │ ├── greendao-1.3.0-beta-1.jar │ └── support_v13_intermediates.jar ├── proguard-project.txt ├── project.properties ├── res │ ├── drawable-hdpi │ │ └── ic_launcher.png │ ├── drawable-ldpi │ │ ├── history_item_bg.9.png │ │ ├── ic_background.png │ │ ├── ic_heart_big.png │ │ ├── ic_heart_small.png │ │ ├── ic_history_bg.png │ │ ├── ic_icon_start.png │ │ ├── ic_launcher.png │ │ ├── ic_line.png │ │ ├── ic_menu_settings.png │ │ └── ic_oval.png │ ├── drawable-mdpi │ │ └── ic_launcher.png │ ├── drawable-xhdpi │ │ └── ic_launcher.png │ ├── drawable-xxhdpi │ │ └── ic_launcher.png │ ├── drawable │ │ └── test.xml │ ├── layout │ │ ├── history.xml │ │ ├── history_item.xml │ │ ├── history_pager.xml │ │ ├── history_pager_one.xml │ │ ├── history_pager_two.xml │ │ ├── measure.xml │ │ └── test.xml │ ├── values-v11 │ │ └── styles.xml │ ├── values-v14 │ │ └── styles.xml │ ├── values-w820dp │ │ └── dimens.xml │ ├── values-zh-rCN │ │ └── strings.xml │ ├── values-zh-rTW │ │ └── strings.xml │ └── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ ├── styles.xml │ │ ├── vpi__attrs.xml │ │ ├── vpi__colors.xml │ │ ├── vpi__defaults.xml │ │ └── vpi__styles.xml └── src │ └── com │ ├── github │ └── mikephil │ │ └── charting │ │ ├── Approximator.java │ │ ├── BarChart.java │ │ ├── BarLineChartBase.java │ │ ├── BarLineChartTouchListener.java │ │ ├── Chart.java │ │ ├── ChartData.java │ │ ├── ColorTemplate.java │ │ ├── DataSet.java │ │ ├── Entry.java │ │ ├── Highlight.java │ │ ├── LineChart.java │ │ ├── OnChartValueSelectedListener.java │ │ ├── PieChart.java │ │ ├── PieChartTouchListener.java │ │ ├── PointD.java │ │ ├── SelInfo.java │ │ ├── Utils.java │ │ └── Vector3.java │ ├── sherchen │ └── heartrate │ │ ├── HeartApplication.java │ │ ├── History.java │ │ ├── Measure.java │ │ ├── Test.java │ │ ├── adapter │ │ ├── EditablePagerAdapter.java │ │ ├── EntityListAdapter.java │ │ ├── HistoryAdapter.java │ │ └── HistoryViewPagerAdapter.java │ │ ├── control │ │ ├── HistoryControl.java │ │ ├── MeasureControl.java │ │ └── util │ │ │ ├── CommonUtil.java │ │ │ ├── DbUtil.java │ │ │ └── ViewHolder.java │ │ ├── greendao │ │ ├── DaoMaster.java │ │ ├── DaoSession.java │ │ ├── HistoryEntity.java │ │ └── HistoryEntityDao.java │ │ ├── viewpagerindicator │ │ ├── CirclePageIndicator.java │ │ └── PageIndicator.java │ │ └── views │ │ ├── FullShowListView.java │ │ ├── ProgressWheelFitButton.java │ │ ├── TwinkleDrawable.java │ │ ├── WaveView.java │ │ └── animator │ │ ├── EvaluateUtil.java │ │ ├── LinearEvaluator.java │ │ ├── SimpleTranslate.java │ │ └── Translate.java │ └── todddavies │ └── components │ └── progressbar │ └── ProgressWheel.java ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | # Built application files 2 | *.apk 3 | *.ap_ 4 | 5 | # Files for the Dalvik VM 6 | *.dex 7 | 8 | # Java class files 9 | *.class 10 | 11 | # Generated files 12 | bin/ 13 | gen/ 14 | 15 | # Gradle files 16 | .gradle/ 17 | build/ 18 | 19 | # Local configuration file (sdk path, etc) 20 | local.properties 21 | 22 | # Proguard folder generated by Eclipse 23 | proguard/ 24 | 25 | # Log Files 26 | *.log 27 | -------------------------------------------------------------------------------- /22.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/22.gif -------------------------------------------------------------------------------- /HeartRate/.classpath: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /HeartRate/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | WaveHeartRate 4 | 5 | 6 | 7 | 8 | 9 | com.android.ide.eclipse.adt.ResourceManagerBuilder 10 | 11 | 12 | 13 | 14 | com.android.ide.eclipse.adt.PreCompilerBuilder 15 | 16 | 17 | 18 | 19 | org.eclipse.jdt.core.javabuilder 20 | 21 | 22 | 23 | 24 | com.android.ide.eclipse.adt.ApkBuilder 25 | 26 | 27 | 28 | 29 | 30 | com.android.ide.eclipse.adt.AndroidNature 31 | org.eclipse.jdt.core.javanature 32 | 33 | 34 | -------------------------------------------------------------------------------- /HeartRate/.settings/org.eclipse.jdt.core.prefs: -------------------------------------------------------------------------------- 1 | eclipse.preferences.version=1 2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 3 | org.eclipse.jdt.core.compiler.compliance=1.6 4 | org.eclipse.jdt.core.compiler.source=1.6 5 | -------------------------------------------------------------------------------- /HeartRate/Android.mk: -------------------------------------------------------------------------------- 1 | # written by wsq 2 | 3 | LOCAL_PATH := $(call my-dir) 4 | include $(CLEAR_VARS) 5 | 6 | LOCAL_MODULE_TAGS := optional 7 | 8 | LOCAL_STATIC_JAVA_LIBRARIES := malata_base android-support-v13 greendao 9 | 10 | LOCAL_SRC_FILES := $(call all-java-files-under, src) 11 | LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/res \ 12 | packages/apps/malata_base/res 13 | #it must be added here,the reason is unknown till now 14 | LOCAL_AAPT_FLAGS := \ 15 | --auto-add-overlay \ 16 | --extra-packages com.malata.base 17 | LOCAL_SDK_VERSION := current 18 | 19 | LOCAL_PACKAGE_NAME := HeartRate 20 | 21 | LOCAL_PROGUARD_FLAG_FILES := proguard-project.txt 22 | 23 | include $(BUILD_PACKAGE) 24 | 25 | ###################################### 26 | #Cause the greendao is defined in the MyLauncher app 27 | #include $(CLEAR_VARS) 28 | 29 | #LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := greendao:libs/greendao-1.3.0-beta-1.jar 30 | 31 | #include $(BUILD_MULTI_PREBUILT) -------------------------------------------------------------------------------- /HeartRate/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 10 | 11 | 17 | 20 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /HeartRate/HeartRate.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 8 | 9 | 10 | 11 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | -------------------------------------------------------------------------------- /HeartRate/assets/fonts/CODE_Light.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/assets/fonts/CODE_Light.otf -------------------------------------------------------------------------------- /HeartRate/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'android' 2 | 3 | dependencies { 4 | compile fileTree(dir: 'libs', include: '*.jar') 5 | // compile 'com.android.support:appcompat-v7:19.+' 6 | compile files('libs/greendao-1.3.0-beta-1.jar') 7 | compile project(':malata_base') 8 | compile files('libs/support_v13_intermediates.jar') 9 | } 10 | 11 | android { 12 | compileSdkVersion 18 13 | buildToolsVersion '19.1.0' 14 | sourceSets { 15 | main { 16 | manifest.srcFile 'AndroidManifest.xml' 17 | java.srcDirs = ['src'] 18 | resources.srcDirs = ['src'] 19 | aidl.srcDirs = ['src'] 20 | renderscript.srcDirs = ['src'] 21 | res.srcDirs = ['res'] 22 | assets.srcDirs = ['assets'] 23 | } 24 | 25 | // Move the tests to tests/java, tests/res, etc... 26 | instrumentTest.setRoot('tests') 27 | 28 | // Move the build types to build-types/ 29 | // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... 30 | // This moves them out of them default location under src//... which would 31 | // conflict with src/ being used by the measure source set. 32 | // Adding new build types or product flavors should be accompanied 33 | // by a similar customization. 34 | debug.setRoot('build-types/debug') 35 | release.setRoot('build-types/release') 36 | } 37 | defaultConfig {} 38 | productFlavors { 39 | } 40 | buildTypes { 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /HeartRate/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/ic_launcher-web.png -------------------------------------------------------------------------------- /HeartRate/libs/greendao-1.3.0-beta-1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/libs/greendao-1.3.0-beta-1.jar -------------------------------------------------------------------------------- /HeartRate/libs/support_v13_intermediates.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/libs/support_v13_intermediates.jar -------------------------------------------------------------------------------- /HeartRate/proguard-project.txt: -------------------------------------------------------------------------------- 1 | # To enable ProGuard in your project, edit project.properties 2 | # to define the proguard.config property as described in that file. 3 | # 4 | # Add project specific ProGuard rules here. 5 | # By default, the flags in this file are appended to flags specified 6 | # in ${sdk.dir}/tools/proguard/proguard-android.txt 7 | # You can edit the include path and order by changing the ProGuard 8 | # include property in project.properties. 9 | # 10 | # For more details, see 11 | # http://developer.android.com/guide/developing/tools/proguard.html 12 | 13 | # Add any project specific keep options here: 14 | 15 | # If your project uses WebView with JS, uncomment the following 16 | # and specify the fully qualified class name to the JavaScript interface 17 | # class: 18 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 19 | # public *; 20 | #} 21 | 22 | -dontskipnonpubliclibraryclasses 23 | 24 | -keep class **.R$* { 25 | *; 26 | } 27 | 28 | -dontwarn **.R$* 29 | 30 | -keep class **.R{ 31 | *; 32 | } 33 | 34 | -dontwarn **.R 35 | 36 | -dontwarn javax.xml.stream.** 37 | 38 | -dontwarn javax.mail.** 39 | 40 | -dontwarn Ljavax.mail.** 41 | 42 | -keep class Ljavax.mail.internet.InternetAddress 43 | -keep class ch.qos.logback.core.net.SMTPAppenderBase 44 | -keep public class de.greenrobot.dao.internal.DaoConfig 45 | 46 | -dontwarn ch.qos.logback.core.net.SMTPAppenderBase 47 | 48 | -keepclassmembers class com.malata.heartrate.greendao.HistoryEntityDao { 49 | #If not keep this member,get the field by reflection will occur NoSuchFieldException 50 | #Cause the field is obfuscated by the proguard,so we will get the error when we want to find it by the reflection 51 | public static final java.lang.String TABLENAME; 52 | } 53 | 54 | -keepclasseswithmembers class com.malata.heartrate.greendao.HistoryEntityDao$Properties { 55 | public final static de.greenrobot.dao.Property Id; 56 | public final static de.greenrobot.dao.Property CalculateTime; 57 | public final static de.greenrobot.dao.Property Rate; 58 | } 59 | -------------------------------------------------------------------------------- /HeartRate/project.properties: -------------------------------------------------------------------------------- 1 | # This file is automatically generated by Android Tools. 2 | # Do not modify this file -- YOUR CHANGES WILL BE ERASED! 3 | # 4 | # This file must be checked in Version Control Systems. 5 | # 6 | # To customize properties used by the Ant build system edit 7 | # "ant.properties", and override values to adapt the script to your 8 | # project structure. 9 | # 10 | # To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): 11 | #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt 12 | 13 | # Project target. 14 | target=android-18 15 | android.library.reference.1=../malata_base 16 | -------------------------------------------------------------------------------- /HeartRate/res/drawable-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/history_item_bg.9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/history_item_bg.9.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_background.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_heart_big.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_heart_big.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_heart_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_heart_small.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_history_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_history_bg.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_icon_start.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_icon_start.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_launcher.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_line.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_menu_settings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_menu_settings.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-ldpi/ic_oval.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-ldpi/ic_oval.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /HeartRate/res/drawable-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Sherchen/WaveHeartRate/7055834b2154a29efa2637df982f6397906fd903/HeartRate/res/drawable-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /HeartRate/res/drawable/test.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /HeartRate/res/layout/history.xml: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 20 | 21 | 31 | 32 | 33 | 39 | 40 | com.sherchen.heartrate.views.FullShowListViewew 41 | android:layout_below="@+id/ll_bar_history" 42 | android:id="@+id/lv_history" 43 | android:layout_marginTop="@dimen/history_list_margin_top" 44 | android:layout_height="wrap_content" 45 | android:layout_width="fill_parent" 46 | android:dividerHeight="@dimen/history_list_divider_height" 47 | /> 48 | 49 | -------------------------------------------------------------------------------- /HeartRate/res/layout/history_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 14 | 22 | 23 | 30 | 31 | 39 | -------------------------------------------------------------------------------- /HeartRate/res/layout/history_pager.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 19 | 20 | 33 | -------------------------------------------------------------------------------- /HeartRate/res/layout/history_pager_one.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 10 | 11 | 21 | 22 | 23 | 30 | 31 | -------------------------------------------------------------------------------- /HeartRate/res/layout/history_pager_two.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | -------------------------------------------------------------------------------- /HeartRate/res/layout/measure.xml: -------------------------------------------------------------------------------- 1 | 9 | 10 | 11 | 19 | 20 | 29 | 30 | 40 | 41 | 48 | 49 | 50 | 61 | 62 | 72 | 73 | 82 | 83 | 97 | 98 | 109 | 110 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /HeartRate/res/layout/test.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 |