226 lines
5.0 KiB
Markdown
226 lines
5.0 KiB
Markdown
# 빠른 시작 가이드
|
|
|
|
현재 프로젝트에 Gradle wrapper 파일이 누락되어 있습니다. 다음 방법 중 하나를 선택하세요.
|
|
|
|
## 방법 1: React Native CLI로 새 프로젝트 생성 후 파일 복사 (권장)
|
|
|
|
### 1단계: 임시 프로젝트 생성
|
|
|
|
```powershell
|
|
# 상위 디렉토리로 이동
|
|
cd ..
|
|
|
|
# 새 React Native 프로젝트 생성
|
|
npx @react-native-community/cli@latest init TempProject
|
|
|
|
# 생성 완료 대기 (5-10분 소요)
|
|
```
|
|
|
|
### 2단계: 필요한 파일 복사
|
|
|
|
```powershell
|
|
# Gradle wrapper 파일 복사
|
|
Copy-Item "TempProject\android\gradle" "workspace_dtgapk\android\" -Recurse -Force
|
|
Copy-Item "TempProject\android\gradlew" "workspace_dtgapk\android\" -Force
|
|
Copy-Item "TempProject\android\gradlew.bat" "workspace_dtgapk\android\" -Force
|
|
|
|
# 기타 필요한 Android 파일 복사
|
|
Copy-Item "TempProject\android\app\src\main\java" "workspace_dtgapk\android\app\src\main\" -Recurse -Force
|
|
Copy-Item "TempProject\android\app\src\main\res" "workspace_dtgapk\android\app\src\main\" -Recurse -Force
|
|
Copy-Item "TempProject\android\app\proguard-rules.pro" "workspace_dtgapk\android\app\" -Force
|
|
Copy-Item "TempProject\android\app\debug.keystore" "workspace_dtgapk\android\app\" -Force
|
|
|
|
# 프로젝트로 돌아가기
|
|
cd workspace_dtgapk
|
|
```
|
|
|
|
### 3단계: 임시 프로젝트 삭제
|
|
|
|
```powershell
|
|
cd ..
|
|
Remove-Item "TempProject" -Recurse -Force
|
|
cd workspace_dtgapk
|
|
```
|
|
|
|
### 4단계: APK 빌드
|
|
|
|
```powershell
|
|
.\build-debug-apk.bat
|
|
```
|
|
|
|
---
|
|
|
|
## 방법 2: Gradle 직접 설치하여 Wrapper 생성
|
|
|
|
### 1단계: Gradle 설치
|
|
|
|
1. https://gradle.org/releases/ 접속
|
|
2. Gradle 8.3 다운로드 (Binary-only)
|
|
3. 압축 해제 (예: C:\Gradle\gradle-8.3)
|
|
|
|
### 2단계: 환경 변수 설정
|
|
|
|
```
|
|
GRADLE_HOME = C:\Gradle\gradle-8.3
|
|
Path에 추가: %GRADLE_HOME%\bin
|
|
```
|
|
|
|
### 3단계: Wrapper 생성
|
|
|
|
```powershell
|
|
cd android
|
|
gradle wrapper --gradle-version 8.3
|
|
cd ..
|
|
```
|
|
|
|
### 4단계: APK 빌드
|
|
|
|
```powershell
|
|
.\build-debug-apk.bat
|
|
```
|
|
|
|
---
|
|
|
|
## 방법 3: Expo 사용 (가장 간단)
|
|
|
|
Expo를 사용하면 네이티브 빌드 환경 없이도 APK를 생성할 수 있습니다.
|
|
|
|
### 1단계: 프로젝트를 Expo로 변환
|
|
|
|
```powershell
|
|
# Expo CLI 설치
|
|
npm install -g expo-cli eas-cli
|
|
|
|
# 새 Expo 프로젝트 생성
|
|
cd ..
|
|
npx create-expo-app LogiStreamExpo
|
|
cd LogiStreamExpo
|
|
|
|
# 웹뷰 패키지 설치
|
|
npx expo install react-native-webview expo-location
|
|
```
|
|
|
|
### 2단계: App.js 수정
|
|
|
|
```javascript
|
|
import React, { useEffect, useState } from 'react';
|
|
import { StyleSheet, View } from 'react-native';
|
|
import { WebView } from 'react-native-webview';
|
|
import * as Location from 'expo-location';
|
|
import axios from 'axios';
|
|
|
|
export default function App() {
|
|
const [location, setLocation] = useState(null);
|
|
|
|
useEffect(() => {
|
|
(async () => {
|
|
let { status } = await Location.requestForegroundPermissionsAsync();
|
|
if (status !== 'granted') {
|
|
console.log('Permission denied');
|
|
return;
|
|
}
|
|
|
|
// 백그라운드 권한 요청
|
|
await Location.requestBackgroundPermissionsAsync();
|
|
|
|
// 위치 추적 시작
|
|
await Location.startLocationUpdatesAsync('background-location-task', {
|
|
accuracy: Location.Accuracy.High,
|
|
timeInterval: 10000,
|
|
distanceInterval: 10,
|
|
});
|
|
})();
|
|
}, []);
|
|
|
|
return (
|
|
<View style={styles.container}>
|
|
<WebView
|
|
source={{ uri: 'https://logistream.kpslp.kr' }}
|
|
style={styles.webview}
|
|
/>
|
|
</View>
|
|
);
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
container: {
|
|
flex: 1,
|
|
},
|
|
webview: {
|
|
flex: 1,
|
|
},
|
|
});
|
|
```
|
|
|
|
### 3단계: EAS Build로 APK 생성
|
|
|
|
```powershell
|
|
# EAS 설정
|
|
eas build:configure
|
|
|
|
# Android APK 빌드
|
|
eas build --platform android --profile preview
|
|
|
|
# 빌드 완료 후 다운로드 링크 제공됨
|
|
```
|
|
|
|
---
|
|
|
|
## 방법 4: 온라인 빌드 서비스 사용
|
|
|
|
### Expo Application Services (EAS)
|
|
- 무료 플랜 제공
|
|
- 클라우드에서 빌드
|
|
- 로컬 환경 설정 불필요
|
|
|
|
### Microsoft App Center
|
|
- 무료 빌드 서비스
|
|
- CI/CD 지원
|
|
|
|
---
|
|
|
|
## 권장 사항
|
|
|
|
**처음 React Native를 사용하시는 경우:**
|
|
→ **방법 3 (Expo)** 추천 - 가장 간단하고 빠름
|
|
|
|
**기존 React Native 경험이 있는 경우:**
|
|
→ **방법 1** 추천 - 완전한 네이티브 제어 가능
|
|
|
|
**빠르게 테스트만 하고 싶은 경우:**
|
|
→ **방법 4 (온라인 빌드)** 추천 - 로컬 설정 불필요
|
|
|
|
---
|
|
|
|
## 다음 단계
|
|
|
|
방법을 선택한 후:
|
|
|
|
1. ✅ Android SDK 설치 (SETUP_ANDROID.md 참고)
|
|
2. ✅ 선택한 방법으로 프로젝트 설정
|
|
3. ✅ APK 빌드
|
|
4. ✅ 테스트
|
|
|
|
---
|
|
|
|
## 문제 해결
|
|
|
|
### "gradle wrapper jar 파일이 없습니다"
|
|
→ 방법 1 또는 방법 2로 wrapper 생성
|
|
|
|
### "Android SDK를 찾을 수 없습니다"
|
|
→ SETUP_ANDROID.md 참고하여 Android Studio 설치
|
|
|
|
### "빌드가 너무 오래 걸립니다"
|
|
→ 첫 빌드는 10-15분 소요 (정상)
|
|
|
|
---
|
|
|
|
## 지원
|
|
|
|
더 자세한 정보는 다음 문서를 참고하세요:
|
|
- BUILD_GUIDE.md - 상세 빌드 가이드
|
|
- SETUP_ANDROID.md - Android 환경 설정
|
|
- README.md - 프로젝트 전체 개요
|
|
|