이 프로젝트는 다음을 목표로합니다.
사양 요약 :
다음은이 앱이 데이터를 소비하는 곳의 서버 API입니다-> RAILS-API-BASE
좋아하는 IDE 또는 Android SDK (BuildTools 23.0.2 및 CompilesDK 23을 설치하거나 dependencies.gradle 에서 자신의 버전을 정의하십시오). 나는 Android Studio를 사용합니다.
저장소를 복제하고 안으로 들어갑니다.
git clone git://github.com/jordifierro/android-base.git --origin android-base YourProjectName
cd YourProjectName
./bin/remove_notes
./bin/rename_project YourProjectName your.package.name
./gradlew clean build cAT
./bin/reset_git https://github.com/yourusername/YourProjectName.git
그게 다야, 이제 자신의 앱 개발을 시작할 수 있습니다!
참고 : 앱을 실행하려면 (지금 테스트 만 실행할 수 있음) API 서버를 설정하는 것을 기억하십시오 (Rails-API-Base는 이미이 앱을 제공하기 위해 개발되었지만 직접 만들 수 있음)를 구성하고 RestApi 구성하여 연결하도록 구성하십시오 (간단히 restapi.java params를 수정).
응용 프로그램 자체는 거의 비어 있으므로 일부 기본 모듈을 제공하고 일부 패턴으로 구조를 구현하고 샘플 코드를 제공하는 것만 목표로합니다. 사양은 다음과 같습니다.
이 응용 프로그램의 주요 목표는 App Basic Boilerplate 코드 작성을 피하는 것입니다. 따라서 다음 기능이 이미 구현되었습니다.
이것은 지금부터 사용할 수 있으며 더 많은 코드를 추가하는 구조화 된 방법을 제공합니다.
더 많은 샘플 코드를 제공하기 위해 title 과 content 로 구성된 notes (필기 종이 노트 표현과 같은)를 관리하기위한 코드가 개발되었습니다. 따라서 앱에는 노트 색인, 세부 사항, 생성 및 편집 스크린이 있습니다.
고유 한 목적은 샘플 코드 인 것이므로 ./bin/remove_notes 스크립트를 실행하면 삭제됩니다.
이 코드는 깨끗한 아키텍처 접근 방식과 MVP (Model-View-Presenter) 패턴에 따라 구성되었습니다. 자세한 내용은이 게시물 과이 게시물 과이 프로젝트를 확인하십시오.
종속성 반전 원리는 앱에서 기본적으로 테스트를보다 쉽게 만들고 구성 요소를 분리하고 재사용 할 수 있도록하기 위해 사용됩니다. 또한 보일러 플레이트 코드를 줄이고 인스턴스 스코프 관리에 도움이됩니다. 이를 달성하는 데 사용 된 라이브러리는 단검 2입니다. 버터 나니는 뷰 주입에 사용됩니다.
깨끗한 아키텍처를 사용하면 다른 레이어를 만들 수 있으며 콜백 지옥을 피하기 위해 Reactivex Library를 사용하여 Reactive 프로그래밍 패러다임이 적용됩니다.
클라이언트 앱으로서 주요 목표는 사용자가 서버 API의 데이터와 상호 작용하도록하는 것입니다. 이 프로젝트는이를 쉽게 다루는 방법을 보여줍니다. 개조 라이브러리는 API 통화 방법을 구현하는 데 사용됩니다. 인증, API 버전 및 국제화가 요청에 포함됩니다.
이 프로젝트의 가장 흥미로운 점 중 하나는 데이터 모듈에서 모든 중간 계층을 포함한 Android보기에 이르기까지 전체 장치 테스트 범위를 가지고 있다는 것입니다. 이것이 깨끗한 아키텍처, 종속성 반전 및 우수한 테스트 관행의 사용의 결과입니다. 그 예 중 하나는 View Testing입니다. 여기서 View Presser는 Mockito에 의해 조롱되고 맞춤형 주니트 러너가 제공하는 단검 구성 요소를 테스트하여 주입합니다.
여기 에서이 테스트 중 일부를 설명하는 자습서를 찾을 수 있습니다.
구현 활동 및 파편과 같은 또 다른 패턴과 모범 사례는 상속을 통한 공통 동작, 파편 사용 및 활동의 내비게이션을 정의하여 화면 리모델링 통증을 만들고 인터페이스를 사용하여 구성 요소를 분리하기 위해 인터페이스를 정의합니다. 문자열 국제화, 스타일 시트 사용 및 기타 작은 방법론과 같은 안드로이드 특정 모범 사례도 뒤를 따릅니다. 여기에서 중고 리소스 중 하나 -> Android 모범 사례 중 하나입니다.
Travis-CI는 각 푸시 (Java 및 Android 테스트 모두)에서 모든 테스트를 실행하기위한 지속적인 통합 시스템으로 추가되었습니다.
로컬로 테스트를 실행하려면 장치를 연결하거나 에뮬레이터를 실행하고 실행합니다.
./gradlew clean build cAT
그것은 Java와 Android 테스트를 모두 실행합니다.
이 템플릿을 사용하여 처음부터 새로운 프로젝트를 쉽게 시작할 수 있도록 /bin 폴더 아래에 일부 스크립트가 있습니다. 위에 놓인 '빠른 시작'섹션을 따르십시오.
모든 쉘 스크립트는 Shellcheck 도구로 확인됩니다.
다음은이 앱이 데이터를 소비하는 곳의 서버 API입니다.
모든 제안과 기여는 환영받는 것 이상입니다!
./gradlew clean build cAT
불행히도 아직 기여자는 없습니다.
http://jordifierro.com