'Software Development > Go (golang)' 카테고리의 다른 글
3.1 Go - Hello World (0) | 2016.02.29 |
---|---|
2. Go - 개발환경 구성 (0) | 2016.02.28 |
1.3 Go 언어란? - 다른 언어와 비교 (0) | 2016.02.28 |
1.2 Go 언어란? - 주요 특징 (0) | 2016.02.28 |
1. Go 언어란? (0) | 2016.02.27 |
3.1 Go - Hello World (0) | 2016.02.29 |
---|---|
2. Go - 개발환경 구성 (0) | 2016.02.28 |
1.3 Go 언어란? - 다른 언어와 비교 (0) | 2016.02.28 |
1.2 Go 언어란? - 주요 특징 (0) | 2016.02.28 |
1. Go 언어란? (0) | 2016.02.27 |
3.1 Go - Hello World (0) | 2016.02.29 |
---|---|
2. Go - 개발환경 구성 (0) | 2016.02.28 |
1.3 Go 언어란? - 다른 언어와 비교 (0) | 2016.02.28 |
1.2 Go 언어란? - 주요 특징 (0) | 2016.02.28 |
1.1 Go 언어란? - History (0) | 2016.02.27 |
□ Hierarchical Parent
Activity 를 추가할 때 Hierarchical Parent 를 주면, 기본적인 Navigation 동작이 추가된다. up Navigation 버튼이 Navigation Bar 에 추가되고, Back 버튼을 눌렀을 때 Parent Activity 가 호출되는 등의 Action 이 실행된다.
<androidManifest.xml> 내용 중
<activity android:name=".DisplayMessageActivity" android:label="@string/title_activity_display_message" android:parentActivityName=".HelloActivity" android:theme="@style/AppTheme.NoActionBar"> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.goodjoon.helloandroid.HelloActivity" /> </activity> 위에서 android:parentActivityName=".HelloActivity" 가 추가된 것을 볼 수 있다.
나중에 수동으로 Activity 를 추가하면 저렇게 parentActivity 를 주면 된다.
|
Auto Completion 관련한 단축키들 (0) | 2016.02.13 |
---|---|
안드로이드 개발 #4 - 첫 UI 개발 (1) | 2016.02.10 |
안드로이드 개발 #3 - 앱 실행하기 (0) | 2016.02.08 |
안드로이드 개발 #2 - 새 프로젝트 살펴보기 (0) | 2016.02.06 |
안드로이드 개발 #1 - Android Studio 설치 및 새프로젝트 생성 (0) | 2016.02.06 |
안드로이드 개발 #5 - 새로운 Activity 시작 (1) | 2016.02.14 |
---|---|
안드로이드 개발 #4 - 첫 UI 개발 (1) | 2016.02.10 |
안드로이드 개발 #3 - 앱 실행하기 (0) | 2016.02.08 |
안드로이드 개발 #2 - 새 프로젝트 살펴보기 (0) | 2016.02.06 |
안드로이드 개발 #1 - Android Studio 설치 및 새프로젝트 생성 (0) | 2016.02.06 |
리소스 객체
리소스 객체(Resource Object)는 앱 리소스와 연관된 비트맵, Layout 파일, String 등의 유일한 Integer 이름이다.
모든 리소스는 gens/R.java 내에 상응하는 리소스 객체가 정의된다. R 클래스 내의 객체 이름을 사용하여 android:hint 와 같은 리소스를 참조할 수 있다.
또한 View 와 연계되는 임의의 리소스 ID 를 android:id 를 통해 생성할 수 있다.
SDK Tool 은 매 컴파일 마다 R.java 파일을 생성한다. 이 파일을 수동으로 편집하지 말아야 한다.
|
안드로이드 개발 #5 - 새로운 Activity 시작 (1) | 2016.02.14 |
---|---|
Auto Completion 관련한 단축키들 (0) | 2016.02.13 |
안드로이드 개발 #3 - 앱 실행하기 (0) | 2016.02.08 |
안드로이드 개발 #2 - 새 프로젝트 살펴보기 (0) | 2016.02.06 |
안드로이드 개발 #1 - Android Studio 설치 및 새프로젝트 생성 (0) | 2016.02.06 |
을 눌러서 실행시키거나 Shift+F10 으로 실행하면 Run 이 실행되고, Debug Run 하고 싶다면 Run 옆의 Debug 버튼(Shift+F9)을 누른다.
> gradlew.bat assembleDebug |
> gradlew.bat assembleRelease |
> adb install app/build/outputs/apk/app-debug.apk |
Auto Completion 관련한 단축키들 (0) | 2016.02.13 |
---|---|
안드로이드 개발 #4 - 첫 UI 개발 (1) | 2016.02.10 |
안드로이드 개발 #2 - 새 프로젝트 살펴보기 (0) | 2016.02.06 |
안드로이드 개발 #1 - Android Studio 설치 및 새프로젝트 생성 (0) | 2016.02.06 |
retainCount 값에 의존하지 말기 (1) | 2010.10.12 |
안드로이드 개발 #4 - 첫 UI 개발 (1) | 2016.02.10 |
---|---|
안드로이드 개발 #3 - 앱 실행하기 (0) | 2016.02.08 |
안드로이드 개발 #1 - Android Studio 설치 및 새프로젝트 생성 (0) | 2016.02.06 |
retainCount 값에 의존하지 말기 (1) | 2010.10.12 |
P3P 와 쿠키 사용 관계 (0) | 2010.02.25 |
4년 간 Hybrid Mobile App 개발도구를 포함한 MEAP 솔루션 개발을 리딩해왔지만 모바일쪽 개발은 주로 iOS 만을 해왔다. 안드로이도 개발은 직접 하지 않았는데, 올해 사적인 프로젝트를 하나 진행하기 위해 안드로이드쪽 앱을 직접 개발하지 않으면 안되는 상황이다.
작년 초반 까지만 해도 Eclipse에 Android Development Tools 플러그인을 설치하고, XCode 의 Command Line Build 를 함께 쓰도록 하여 Hybrid App 개발툴킷을 만들었지만 작년 중반 이후에 Google에서 Android Studio 만을 사용하도록 강력히 밀고있는 상황이라 난 Android Studio 를 사용하기로 결정했다.
일단, Android Studio 를 다운로드 받는다
■ 신규 프로젝트 생성
Android Studio를 설치 후 실행하면, 아래 처럼 New Project Window 가 실행된다
처음 프로젝트를 시작하므로, "Start a new Android Studio Project" 를 선택
New Project 화면에서의 요소별 설명은 다음과 같다
※ 한글 앱 이름
앱 이름이 한글이면, Package Name 이 자동생성 되지 않는다 이때는 Package Name 우측에 보이는 "edit" 를 클릭하여 수동으로 패키지 이름을 변경해주면 된다.
또한 가급적이면 Project location 에 한글명이 들어가는 경로는 피하도록 하자.
이제 Target Android Device 를 선택한다. Minimum SDK 목록을 보면 이제 친절하게도 API Level 과 함께 OS 이름도 나온다. 이 SDK 를 잘 설정해주어야 나중에 어떤 버전 기기에서는 보이네 안보이네 하는 문제에서 자유로울 수 있다.
더 놀라운것은, SDK 를 선택하면, 세계적으로 해당 SDK 버전 이상의 OS 사용자 비율을 보여준다는 것이다. 위 화면에서는 4.2 젤리빈으로 개발하면 전세계 약 81.4% 의 Android 기기에 설치될 수 있는 앱을 개발할 수 있음을 보여준다
이제 이렇게 SDK 까지 선택한 후, 처음 실행 될 Activity 를 선택하는 화면이 나온다. 다음 편에서는 Android 의 Activity 가 무엇인가 부터 찬찬히 살펴보도록 하겠다
안드로이드 개발 #3 - 앱 실행하기 (0) | 2016.02.08 |
---|---|
안드로이드 개발 #2 - 새 프로젝트 살펴보기 (0) | 2016.02.06 |
retainCount 값에 의존하지 말기 (1) | 2010.10.12 |
P3P 와 쿠키 사용 관계 (0) | 2010.02.25 |
Table 밖에서 TR, TD 쓰면 (0) | 2009.08.15 |
아주 기본적인 이야기 이지만, 버튼을 눌렀을 때 Bouncing 이 발생한다는건 많은사람들이 상식적으로 알고있는 이야기 이다.
하지만 실제로 어떻게 시그널이 생성되는지 잠시 알아보기 위해 몇가지 실험을 해보고 이를 해결하기 위한 방법을 S/W 와 H/W 로 접근해보기로 한다.
일단 수치적으로 보면 버튼을 눌렀을 때 아래와 같은 현상이 발생한다.
A0 (14) 핀에 버튼을 물려놨고, 버튼이 처음 HIGH 일 때 부터 1000 번의 루프에서 digitalRead() 를 한 결과이다.
버튼을 누르고 있는 상태에서 조금 버튼을 비벼(?)댔더니 96%와 심지어 28%까지의 결과가 중간에 나온다.
위 실험 결과를 보면, 눌렀다 떼었다 한 부분이 다른 부분은 명확하지만 파란색 박스가 쳐져있는 부분은 순간적인 Bouncing 이 일어난 부분이다. 만약 무조건 HIGH = 눌림 으로 했거나 Interrupt 를 걸어서 H-L 위상 변화 시에 눌림으로 인식하게 했다면 파란색 부분은 두번 이상 눌린 효과가 발생했을 것이다.
(Plotting 도구와 내 컴퓨터의 성능 한계로, 아두이노는 115200 속도에 5ms 딜레이를 매 루프 내에 주었다. 5ms 미만으로 줄 경우 툴이 반응하지 못해서 측정이 불가하다. 오실로스코프가 필요한때이다 싶다)
위 그래프는 아날로그로 Read 한 결과이다. 누른 상태에서 버튼을 비벼대니 저런 지저분한 결과가 나왔다. 원래 의도대로라면 계속 눌려있어야 하는데 눌리지 않고 중간에 저렇게 전압이 마구 변동되는 모습을 볼 수 있다.
앞으로 해볼일은 위 현상들을 Single 버튼일때 없애는 것과 ADC 를 통해 Analog 로 여러 버튼으로 읽을 때 없애는 것이며, S/W 와 H/W 적인 방식에 대해 직접 테스트 해볼 예정이다.
아두이노 송수신기 만들기 #서보&모터 테스트 (3) | 2015.11.15 |
---|---|
아두이노 송수신기 만들기 #수신기 회로 (0) | 2015.11.08 |
아두이노 송수신기 만들기 #조이스틱 연결 (1) | 2015.11.07 |
아두이노 송수신기 만들기 #통신모듈 테스트 (3) | 2015.10.31 |
NRF24L01 모듈 #2 - 소프트웨어 (4) | 2015.10.31 |
오늘 둘째놈이 아빠방에 고장나서 방치되어있는 자기 지프차를 보더니 "아빠 이거 고쳐줘잉~" 이런다. 요새 계속되는 회사 야근때문에 손을 거의 데지 못하고 있었는데, 오늘 좀더 진도를 나가본다.
오늘은 수신기쪽에 모터와 서보를 붙여놓고 실제로 돌아가는지 테스트를 해봤다.
좌측이 송신기쪽, 우측이 수신기쪽이다.
수신기쪽에 파란색 작은 SG90 이 스티어링 서보이고, 스탠다드 사이즈의 서보처럼 생긴것은 서보가 아니고 그냥 감속기어 달린 모터이다.
좌측의 송신기쪽 스틱 하나로 스티어링과 서보를 모두 제어하게 설계하였는데, 이게 문제가 좀 있다. 스틱이 하나이다보니 스로틀+스티어링이 동시에 제어되기 힘든구조이다.
앞으로 밀면서 옆으로 밀면 앞으로 밀 수가 없다. 저 스틱의 움직이는 범위가 사각형이 아니라 원형이기 때문에 왼쪽+위 이런게 안된다. 우선 1차 버전은 심플하게 이렇게 만들고 다음 버전에서는 스틱을 분리하던지 건타입을 어떻게 해서든 만들어봐야하겠다.
움직이는 동영상 하나 올려본다.
이번에 수정한 코드이다. 좀더 설계를하고 만들어야 하는데, 막코딩으로 가고있다.
송신기 코드는 이전과 같고, 수신기 코드만 올려본다.
버튼과 Bounce #1 - Bouncing 현상 들여다보기 (0) | 2015.11.15 |
---|---|
아두이노 송수신기 만들기 #수신기 회로 (0) | 2015.11.08 |
아두이노 송수신기 만들기 #조이스틱 연결 (1) | 2015.11.07 |
아두이노 송수신기 만들기 #통신모듈 테스트 (3) | 2015.10.31 |
NRF24L01 모듈 #2 - 소프트웨어 (4) | 2015.10.31 |