5. Appendix1 : 안드로이드 어플을 통해 스마트워치 데이터 분석하기 - GachonCapstoneHCI/pingpong_score GitHub Wiki
스마트 워치에서 측정되는 센서들의 값 변화를 보기 위해 안드로이드 앱인 "Sensor Dashboard" 를 사용한다
Sensor Dashboard 의 특징은 다음과 같다
- 센서별로 실시간 데이터를 수집하고 확인할 수 있다.
- 실시간으로 측정되는 데이터를 text 파일로 export 해서 분석할 수 있다. (여기)[https://github.com/pocmo/SensorDashboard]
1. 위에 링크를 타고 들어가서 Sensor Dashboard를 github에서 다운받는다
2. 안드로이드 스튜디오로 프로젝트 열기
3. Sensor Dashboard 가 약 3~4년 전까지만 업데이트된거라서 나름 최신 버전으로 gradle 을 설정해줘야한다.
4. 안드로이드 스튜디오 창 왼쪽 Project 탭에서 Gradle Scripts/build.gradle, wear/build.gradle, mobile/build.gradle, shared/build.gradle 을 수정해야한다.
이유는 3~4년 전 기준으로 설정되어있는 targetSDK 와 compileSDK 를 수정해주기 위해서.
build.gradle(Project: SensorDashboard-master)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath "io.realm:realm-gradle-plugin:4.4.0"
}
}
ext {
compileSdkVersion = 26
buildToolsVersion = "26.0.2"
}
allprojects {
repositories {
jcenter()
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
}
}
// Top-level build file where you can add configuration options common to all sub-projects/modules.
build.gradle/Module:mobile
apply plugin: 'com.android.application'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.github.pocmo.sensordashboard"
minSdkVersion 20
targetSdkVersion 26
versionCode 5
versionName "1.1.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '26.0.2'
}
apply plugin: 'com.android.application'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.github.pocmo.sensordashboard"
minSdkVersion 18
targetSdkVersion 26
versionCode 5
versionName "1.1.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '26.0.2'
}
dependencies {
compile 'com.android.support.constraint:constraint-layout:1.0.2'
wearApp project(':wear')
compile project(':shared')
//wearable
compile 'com.google.android.gms:play-services-wearable:7.5.0'
compile 'com.google.android.gms:play-services-analytics:7.5.0'
compile 'com.android.support:design:26.1.0'
compile 'com.squareup:otto:1.3.6'
}
build.gradle(Module:shared)
apply plugin: 'com.android.library'
apply plugin: 'realm-android'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
minSdkVersion 20
targetSdkVersion 26
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
build.gradle(Module:wear)
apply plugin: 'com.android.application'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
buildToolsVersion rootProject.ext.buildToolsVersion
defaultConfig {
applicationId "com.github.pocmo.sensordashboard"
minSdkVersion 20
targetSdkVersion 26
versionCode 5
versionName "1.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '26.0.2'
}
dependencies {
compile 'com.google.android.support:wearable:1.1.0'
compile 'com.google.android.gms:play-services-wearable:7.5.0'
compile "com.android.support:appcompat-v7:26.0.2"
compile project(':shared')
}
5. 이렇게 해도 문제가 발생하는 경우가 있다.
(1) google() 을 찾을 수가 없다(https://github.com/googlemaps/android-samples/issues/82)
의미 : 프로젝트의 gradle 버전이 낮게 잡혀있다.
해결책 : 프로젝트의 gradle 버전을 수정한다.
윈도우 기준 : File > Project Structure > Project > gradle 이 2.3 으로 잡혀있으면 4.1 로 수정하고 build 한다.
다른 버전으로 하면또 다른 문제가 발생할 수 있으니 조심! 그리고 안드로이드 스튜디오 버전도 확인해야한다.
여기서는 Android Studio version 3.0을 사용했다.
혹시 버전이 낮거나 높으면 에러가 발생할 수 있으니 그 때는 gradle 을 다른 버전으로 설정하는 등 확인해야한다!
6. 스마트 워치 앱과 스마트폰 앱에 대해서 각각 빌드한다.
스마트워치 앱은 빌드 설정에서 wear로, 스마트폰 앱은 빌드 설정에서 mobile로 한다.