-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #343 from tyehooney/main
v_1.0.0
- Loading branch information
Showing
308 changed files
with
15,996 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
## Overview (Required) | ||
- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
## Issue | ||
- close #ISSUE_NUMBER | ||
|
||
## Overview (Required) | ||
- | ||
|
||
## Links | ||
- | ||
|
||
## Screenshot | ||
Before | After | ||
:--: | :--: | ||
<img src="" width="300" /> | <img src="" width="300" /> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
name: Develop Branch CI | ||
|
||
on: | ||
push: | ||
branches: [ develop ] | ||
pull_request: | ||
branches: [ develop ] | ||
|
||
jobs: | ||
build: | ||
|
||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: set up JDK 11 | ||
uses: actions/setup-java@v2 | ||
with: | ||
java-version: '11' | ||
distribution: 'adopt' | ||
cache: gradle | ||
|
||
- name: Decrypt Services | ||
run: gpg --quiet --batch --yes --always-trust --decrypt --passphrase="$SECRET_SERVICE_TAR_GPG" --output ./app/services.tar ./app/services.tar.gpg | ||
env: | ||
SECRET_SERVICE_TAR_GPG: ${{ secrets.SECRET_SERVICE_TAR_GPG }} | ||
|
||
- name: Unzip Services | ||
run: tar xvf ./app/services.tar -C ./app | ||
|
||
- name: Grant execute permission for gradlew | ||
run: chmod +x gradlew | ||
- name: Build with Gradle | ||
run: ./gradlew build | ||
- name: Run Unit Test | ||
run: ./gradlew testDebugUnitTest |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,182 @@ | ||
*.iml | ||
.gradle | ||
/local.properties | ||
.idea | ||
.DS_Store | ||
/build | ||
/captures | ||
.externalNativeBuild | ||
.cxx | ||
local.properties | ||
/app/google-services.json | ||
|
||
# Created by https://www.toptal.com/developers/gitignore/api/android,androidstudio | ||
# Edit at https://www.toptal.com/developers/gitignore?templates=android,androidstudio | ||
|
||
### Android ### | ||
# Built application files | ||
*.apk | ||
*.aar | ||
*.ap_ | ||
*.aab | ||
|
||
# Files for the ART/Dalvik VM | ||
*.dex | ||
|
||
# Java class files | ||
*.class | ||
|
||
# Generated files | ||
bin/ | ||
gen/ | ||
out/ | ||
# Uncomment the following line in case you need and you don't have the release build type files in your app | ||
# release/ | ||
|
||
# Gradle files | ||
.gradle/ | ||
build/ | ||
|
||
# Proguard folder generated by Eclipse | ||
proguard/ | ||
|
||
# Log Files | ||
*.log | ||
|
||
# Android Studio Navigation editor temp files | ||
.navigation/ | ||
|
||
# Android Studio captures folder | ||
captures/ | ||
|
||
# Keystore files | ||
# Uncomment the following lines if you do not want to check your keystore files in. | ||
#*.jks | ||
#*.keystore | ||
|
||
# External native build folder generated in Android Studio 2.2 and later | ||
.cxx/ | ||
|
||
# Google Services (e.g. APIs or Firebase) | ||
# google-services.json | ||
|
||
# Freeline | ||
freeline.py | ||
freeline/ | ||
freeline_project_description.json | ||
|
||
# fastlane | ||
fastlane/report.xml | ||
fastlane/Preview.html | ||
fastlane/screenshots | ||
fastlane/test_output | ||
fastlane/readme.md | ||
|
||
# Version control | ||
vcs.xml | ||
|
||
# lint | ||
lint/intermediates/ | ||
lint/generated/ | ||
lint/outputs/ | ||
lint/tmp/ | ||
# lint/reports/ | ||
|
||
# Android Profiling | ||
*.hprof | ||
|
||
### Android Patch ### | ||
gen-external-apklibs | ||
output.json | ||
|
||
# Replacement of .externalNativeBuild directories introduced | ||
# with Android Studio 3.5. | ||
|
||
### AndroidStudio ### | ||
# Covers files to be ignored for android development using Android Studio. | ||
|
||
# Built application files | ||
|
||
# Files for the ART/Dalvik VM | ||
|
||
# Java class files | ||
|
||
# Generated files | ||
|
||
# Signing files | ||
.signing/ | ||
|
||
# Local configuration file (sdk path, etc) | ||
|
||
# Proguard folder generated by Eclipse | ||
|
||
# Log Files | ||
|
||
# Android Studio | ||
/*/build/ | ||
/*/local.properties | ||
/*/out | ||
/*/*/build | ||
/*/*/production | ||
*.ipr | ||
*~ | ||
*.swp | ||
|
||
# Keystore files | ||
*.jks | ||
*.keystore | ||
|
||
# Google Services (e.g. APIs or Firebase) | ||
# google-services.json | ||
|
||
# Android Patch | ||
|
||
# External native build folder generated in Android Studio 2.2 and later | ||
|
||
# NDK | ||
obj/ | ||
|
||
# IntelliJ IDEA | ||
*.iws | ||
/out/ | ||
|
||
# OS-specific files | ||
.DS_Store? | ||
._* | ||
.Spotlight-V100 | ||
.Trashes | ||
ehthumbs.db | ||
Thumbs.db | ||
|
||
# Legacy Eclipse project files | ||
.classpath | ||
.project | ||
.cproject | ||
.settings/ | ||
|
||
# Mobile Tools for Java (J2ME) | ||
.mtj.tmp/ | ||
|
||
# Package Files # | ||
*.war | ||
*.ear | ||
|
||
# virtual machine crash logs (Reference: http://www.java.com/en/download/help/error_hotspot.xml) | ||
hs_err_pid* | ||
|
||
## Plugin-specific files: | ||
|
||
# JIRA plugin | ||
atlassian-ide-plugin.xml | ||
|
||
# Crashlytics plugin (for Android Studio and IntelliJ) | ||
com_crashlytics_export_strings.xml | ||
crashlytics.properties | ||
crashlytics-build.properties | ||
fabric.properties | ||
|
||
### AndroidStudio Patch ### | ||
|
||
!/gradle/wrapper/gradle-wrapper.jar | ||
|
||
# End of https://www.toptal.com/developers/gitignore/api/android,androidstudio |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,54 @@ | ||
# android03-IvyClub | ||
안드로이드 그룹 프로젝트 3조 아이비클럽 저장소입니다. | ||
<h1 align="center">컨택</h1> | ||
|
||
<p align="center"> | ||
<a href="https://android-arsenal.com/api?level=21"><img alt="API" src="https://img.shields.io/badge/API-21%2B-brightgreen.svg?style=flat"/></a> | ||
<a href="https://github.com/boostcampwm-2021/android03-Contact/actions/workflows/develop-branch-review.yml"><img alt="API" src="https://github.com/boostcampwm-2021/android03-Contact/actions/workflows/develop-branch-review.yml/badge.svg"/></a> | ||
</p> | ||
|
||
<p align="center"> | ||
ReadMe in <a href="https://github.com/boostcampwm-2021/android03-Contact/blob/develop/docs/ReadMeEn.md">English</a><br> | ||
Contact는 안드로이드 기반의 지인 관리 애플리케이션입니다. | ||
<br> | ||
|
||
<p align="center"> | ||
<img src="https://user-images.githubusercontent.com/57510192/143352328-dece1dcf-60f6-4726-a161-3d8db1aa8576.png" width="75%" /> | ||
</p> | ||
|
||
## Previews | ||
<img src="https://user-images.githubusercontent.com/57510192/143807697-396a4e55-3175-48e8-86d7-81e01111fab6.gif" width="100%"> | ||
|
||
## 제공되는 기능 | ||
- 친구와 지인의 정보를 기록하고 저장할 수 있는 **컨택트**입니다. | ||
- 여러분들의 소중한 파트너를 기록해보세요. 어떤 정보라도 좋습니다. | ||
- 지인 정보를 기록함으로써 지인을 기억하고 다음 만남에서 더 자연스럽게 대화를 이어나갈 수 있도록 도와드릴게요. | ||
- 이뿐만 아니라 지인과의 약속을 저장해주시면 기억하고 있다가 해당 약속을 알림으로 알려드릴게요. | ||
- 컨택을 보호하기 위해 비밀번호와 지문인식 기능을 이용할 수 있어요. 걱정하지 마세요. | ||
|
||
## 기술 스택 | ||
- Minimum SDK level 21로 98% 이상의 안드로이드 디바이스 지원 | ||
- 100% [Kotlin](https://kotlinlang.org/) 기반 + [Coroutines](https://developer.android.com/kotlin/coroutines) + [Flow](https://developer.android.com/kotlin/flow) | ||
- [Jetpack](https://developer.android.com/jetpack) | ||
- ViewModel | ||
- Room Persistence | ||
- Architecture | ||
- MVVM Architecture ( View - Databinding - ViewModel - Model ) | ||
- Repository Pattern | ||
- DI를 위한 [Hilt](https://developer.android.com/training/dependency-injection/hilt-android) | ||
- 지문인식을 위한 [Biometric](https://developer.android.com/jetpack/androidx/releases/biometric) | ||
- 알림을 위한 [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager) | ||
- 이미지 처리를 위한 [Glide](https://github.com/bumptech/glide) | ||
- 온보딩 애니메이션을 위한 [Lottie](https://airbnb.io/lottie/#/) | ||
- Unit test를 위한 [JUnit 4](https://github.com/junit-team/junit4) | ||
- CI를 위한 [Github Actions](https://github.com/boostcampwm-2021/android03-Contact/tree/develop/.github/workflows) | ||
- 한국어, 영어, 중국어 지원 | ||
|
||
## 릴리즈 | ||
이번 겨울 구글 플레이 스토어에서 만나요. | ||
|
||
## MAD Scorecard | ||
<img src="https://user-images.githubusercontent.com/57510192/143381010-667f6493-b547-46f1-9e24-0d967c4cfd0b.png"> | ||
<img src="https://user-images.githubusercontent.com/57510192/143814020-43f3aaac-f21a-4b17-a166-e37121d29184.png"> | ||
<img src="https://user-images.githubusercontent.com/57510192/143814025-e21ff3cb-9eed-4e0c-ae23-87f9ea8d9d98.png"> | ||
|
||
## 연락처 | ||
email : bcivyclub@gmail.com |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,89 @@ | ||
plugins { | ||
id("com.android.application") | ||
kotlin("android") | ||
kotlin("kapt") | ||
id("kotlin-android") | ||
id("androidx.navigation.safeargs.kotlin") | ||
id("dagger.hilt.android.plugin") | ||
id("com.google.gms.google-services") | ||
id("com.google.android.gms.oss-licenses-plugin") | ||
id("com.google.firebase.crashlytics") | ||
} | ||
|
||
android { | ||
defaultConfig { | ||
applicationId = "com.ivyclub.contact" | ||
versionCode = Apps.versionCode | ||
versionName = Apps.versionName | ||
} | ||
|
||
buildTypes { | ||
getByName("release") { | ||
isMinifyEnabled = true | ||
isShrinkResources = true | ||
proguardFiles( | ||
getDefaultProguardFile("proguard-android-optimize.txt"), | ||
"proguard-rules.pro" | ||
) | ||
} | ||
|
||
lint { | ||
isAbortOnError = false | ||
} | ||
} | ||
buildFeatures { | ||
viewBinding = true | ||
dataBinding = true | ||
} | ||
testOptions { | ||
unitTests.isReturnDefaultValues = true | ||
} | ||
} | ||
|
||
dependencies { | ||
implementation(Dep.AndroidX.core) | ||
implementation(Dep.AndroidX.appcompat) | ||
implementation(Dep.AndroidX.material) | ||
implementation(Dep.AndroidX.constraintLayout) | ||
implementation(Dep.AndroidX.navigationUIKtx) | ||
implementation(Dep.AndroidX.legacySupport) | ||
implementation(Dep.AndroidX.navigationFragmentKtx) | ||
implementation(Dep.AndroidX.activityKtx) | ||
implementation(Dep.AndroidX.fragmentKtx) | ||
implementation(Dep.AndroidX.viewpager2) | ||
implementation(Dep.AndroidX.support) | ||
implementation(Dep.AndroidX.liveDataKtx) | ||
implementation(Dep.AndroidX.lifecycleRuntimeKtx) | ||
implementation(Dep.AndroidX.biometric) | ||
implementation(Dep.AndroidX.workRuntime) | ||
implementation(Dep.AndroidX.hiltWork) | ||
implementation(Dep.Kotlin.coroutine) | ||
implementation(Dep.Kotlin.coroutineCore) | ||
implementation(Dep.Libs.glide) | ||
implementation(Dep.Libs.gson) | ||
implementation(Dep.Libs.flexboxLayout) | ||
implementation(Dep.Libs.hilt) | ||
implementation(Dep.Libs.hiltViewModel) | ||
implementation(Dep.Libs.indicator) | ||
implementation(Dep.Libs.lottie) | ||
implementation(Dep.Libs.jBCrypt) | ||
implementation(Dep.Libs.ossLicensesLibrary) | ||
implementation(platform(Dep.Firebase.firebaseBom)) | ||
implementation(Dep.Firebase.crashlyticsKtx) | ||
implementation(Dep.Firebase.analyticsKtx) | ||
implementation(project(mapOf("path" to ":data"))) | ||
kapt(Dep.AndroidX.roomCompiler) | ||
kapt(Dep.Libs.hiltCompiler) | ||
kapt(Dep.Libs.hiltViewModelCompiler) | ||
kapt(Dep.Libs.hiltWorkCompiler) | ||
testImplementation(Dep.Test.jUnit) | ||
testImplementation(Dep.Test.mockito) | ||
testImplementation(Dep.Test.coroutines) | ||
testImplementation(Dep.Test.mockitoInline) | ||
debugImplementation(Dep.Libs.leakCanary) | ||
androidTestImplementation(Dep.Test.ext) | ||
androidTestImplementation(Dep.Test.espresso) | ||
androidTestImplementation(Dep.Test.hilt) | ||
androidTestImplementation(Dep.Test.core) | ||
androidTestImplementation(Dep.Test.contrib) | ||
} |
Oops, something went wrong.