1. 개요
미니 메모 앱은 사용자 친화적인 메모 기능을 제공하는 인기 있는 애플리케이션입니다. 본 문서에서는 해당 앱의 오픈소스 코드를 로컬 환경에 배포하고, 개발 환경을 구성하는 과정을 단계별로 설명합니다. 이 과정을 통해 앱의 아키텍처와 핵심 기능 구현 방식을 깊이 이해하며, Android 개발 능력을 향상시키는 데 목적이 있습니다.
2. Android Studio 설치
- 다운로드 링크: Android Studio 공식 다운로드 페이지
- 설치 시 기본 경로를 변경하여 프로젝트 관리에 유리하도록 설정합니다.
- 설치 완료 후 실행하면 초기 프로젝트 생성 화면이 나타납니다.
3. 소스 코드 가져오기
GitHub 또는 백도망에서 제공된 소스 코드를 다운로드합니다.
- 링크: https://pan.baidu.com/s/1ZwTFqDYn664pluMD2rCqmw?pwd=f5k5
- 비밀번호: f5k5
4. JDK 설치 및 환경 설정
- JDK 8 이상 권장
링크: JDK 다운로드 (백도망) | 비밀번호:j163 - 또는 공식 사이트: Oracle Java Archive
- 환경 변수 설정 후, 명령줄에서
java --version입력으로 설치 확인
5. Android SDK 구성
Android Studio 내부에서 File > Settings > Appearance & Behavior > System Settings > Android SDK 경로로 이동하여, API 35 이상의 SDK를 설치합니다.
6. 프로젝트 구조 준비
다운로드한 소스 코드의 res/notes 폴더를 자신의 프로젝트에 복사해 넣습니다. 이 폴더에는 앱의 리소스 파일(아이콘, 문자열 등)이 포함되어 있습니다.
7. Gradle 설정 및 최적화
Gradle 의존성 파일 수정:
gradle/wrapper/gradle-wrapper.properties 파일 열기 후 다음 내용으로 교체:
distributionUrl=https://mirrors.aliyun.com/macports/distfiles/gradle/gradle-8.7-bin.zip
또한, Settings > Build, Execution, Deployment > Build Tools > Gradle에서 다음과 같은 설정을 확인하세요:
- 사용할 JDK 버전 지정
- Gradle User Home 경로 지정 (예:
C:/gradle-cache)
8. 빌드 오류 해결 및 종속성 추가
프로젝트 빌드 전, AndroidManifest.xml 파일에 필요한 권한과 컴포넌트를 정확히 포함해야 합니다. 예시:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application>
<activity
android:name=".ui.NotesListActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.NoteEditActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/text_note" />
</intent-filter>
</activity>
<provider
android:name="net.micode.notes.data.NotesProvider"
android:authorities="micode_notes"
android:multiprocess="true" />
<receiver android:name=".widget.NoteWidgetProvider_2x"
android:exported="true">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
</receiver>
</application>
</manifest>
빌드 시 발생하는 .jar 충돌 문제를 방지하기 위해, build.gradle 파일 내 다음과 같은 의존성 주석 처리:
// implementation(files("E:\\RJGC\\Notes-master\\httpcomponents-client-4.5.14-bin\\lib\\httpclient-osgi-4.5.14.jar"))
// implementation(files("E:\\RJGC\\Notes-master\\httpcomponents-client-4.5.14-bin\\lib\\httpclient-win-4.5.14.jar"))
// implementation(files("E:\\RJGC\\Notes-master\\httpcomponents-client-4.5.14-bin\\lib\\httpcore-4.4.16.jar"))
9. 가상 디바이스 생성 및 실행
Android Studio 우측 상단의 + Create Virtual Device 선택 → 원하는 기기 모델 선택 → 다음 단계 진행 → 기본 설정 유지 후 완료.
최종적으로:
- 하단 도구 모음에서 Make Module 클릭 (해머 아이콘)
- 그 후 Sync Project with Gradle Files 실행
- 디바이스 선택 후 Run 클릭으로 앱 실행
성공적으로 실행되면 미니 메모 앱이 가상 기기에서 작동합니다.