달력

32012  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
안드로이드 폰 써보시는분들 아시겠지만
요즘 어플들 써보시면 대부분 "보내기" 기능같은거 다 있죠?

이게 구현되는 원리는,
어플리케이션은 시스템에 설치되면 manifest파일이 분석되어
각 activity들의 Intent-fileter에 선언된 action들이 시스템에 등록됩니다.

그래서 특정 어플리케이션에서 암시적 인텐트를 호출하게 되면
상기의 내용들을 가지고
전달된 uri의 내용에 따라 어떤 앱을 띄워줄지 시스템에서 결정하게 됩니다.

아래는 인터넷을 띄우는 인텐트나 사용자가 뭔가 링크를 클릭했을 때 반응하게 하는 IntentFilter의 선언 예입니다.

 

쉽죠? http 를 예로 드니까 뭔지 한번에 딱 알것같죠?
하지만 이게 끝이 아닙니다. 

scheme://host:port/path

어디서 많이 보던 형식같지 않나요? 네 인터넷에서 많이 쓰는 url 형식입니다.
안드로이드도 사용자에겐 보이지 않지만 내부적으로 이런 나름의 프로토콜을 가지고 있답니다.

만약 제가 웹페이지를 하나 만들어서, kkkk://simsim:1111/hae 라는 링크를 걸어 두고.
제 액티비티에  

<intent-filter>
<category android:name="android.intent.category.BROWSABLE />
<category android:name="android.intent.category.VIEW />
<category android:name="android.intent.category.DEFAULT />
<data android:scheme="kkkk" android:host="simsim"/>
</intent-filter>

/**
* DEFAULT는 인텐트필터를 쓰겠다면 꼭! 선언해 주셔야 합니다. 안그럼 안뜹니다.
**/

이라고 선언해 두면, 웹페이지에서 제 어플이 호출되는 마법같은 일(?)이 일어납니다! 
물론 uri가 통채로 날아오며, 이걸 해당 액티비티에서 getIntent().getData() 해서
리턴된 Uri를 맘대로 갖고 노시면 됩니다.

인텐트필터는 이 밖에도 mimeType, pathPrefix, pathPattern 등의 기능이 있는데,
제가 아직 잘 모르는 사항이라 다음에 포스팅 하도록 하겠습니다.


감사합니다. 
Posted by 낭만폭풍
|

연속된 ndk-build 세팅 삽질의 끝에 결국 성공했습니다.
알고나니 별거 없었지만 그래도 공유합니다.


환경 -
Mac OS X Lion 10.7.3
Eclipse Java EE IDE for Web Developers: Helios Service Release 2 
X-Code 4.3



1. X-Code 설치
지금 나오는 버전에는 X-Code에 기본적으로 gcc, make가 안깔려 있습니다.
(4.2 이전버전이 이미 설치되어 사용하시는 분은 건너 뛰셔도 좋습니다.) 
일단 X-Code를 깔고 업데이트를 모두 다 한 뒤에 Preference - Download 로 들어갑니다.


이런게 나옵니다.
저는 이미 설치했으므로 Update가 뜨지만 여러분은 Install이 뜰겁니다. 눌러서 설치합니다.
(기본적으로 애플 개발자 계정이 필요하지만, 없어도 다운받는 방법이 있긴 합니다. 구글링....)

2. 이클립스 설치
다른 포스트에는 이클립스 C/C++버전을 받고 MinGW를 받으라고 하는데
그런거 필요 없습니다.
이클립스에서 Install new Software 들어가셔서 Hellios 선택하시면 C/C++ Develper Tools 가 있습니다. 깝니다.
(CDT 아닙니다. CDT 받으시면 컴파일러랑 Make랑 다 잡아줘야 됩니다. 귀찮습니다.)
 

3. 이제 개발을 시작합니다.
제가 깐건 컴파일이고 뭐고 다 환경변수 참조해서 알아서 잡아 줍니다. 편합니다.
안드로이드처럼 그냥 코딩해서 실행 누르면 콘솔창에 팍팍 뜹니다. 재미납니다.


아무쪼록 많은 도움이 되었으면 좋겠습니다.
즐개발 하세요. 

'개발 > iOS' 카테고리의 다른 글

iOS 지역화 삽질 후기  (0) 2013.06.24
Mac OS X Lion 에서 PATH 환경변수 설정하기  (1) 2012.03.08
Posted by 낭만폭풍
|
* Mac OS X 관련 포스트는 라이언 10.7.3버전을 기준으로 합니다. 2012년 3월 8일 기준.

윈도우에는 시스템 설정에 환경변수라는 매우 편리하면서 귀찮은 기능이 있는데,
맥에서도 물론 이런게 있습니다. 윈도우처럼 설정 어디 있는건 아니고
시스템 파일을 편집해야 되는데, 방법은 아래와 같습니다.

1. 터미널을 엽니다.

chan-u-bag-ui-iMac:~ username$

이렇게 나옵니다. 이렇게 안나오시는 분은 물결무늬 나올때까지 cd .. 해주세요.
참고로 이 경로는 finder열어서 username누르면 나오는 그 경로입니다. (/Users/username/)

2. 파일 목록을 확인합니다.

ls -a 하시면 

.bash_profile 또는 .profile 이라는 파일이 있을겁니다. 기본적으로는 숨김파일입니다.
(라이언에서는 두번째께 뜰겁니다.)

이걸 open -e .profile 해서 편집 모드로 엽니다.
열어보면

export PATH=/opt/local/bin:/opt/local/sbin:$PATH

이런 비슷한게 있을겁니다.
저는 macports를 설치한 상태여서 저 경로들이 뜨고, 여러분은 아마 아무것도 없을 겁니다. 그냥 붙여넣어 주시면 됩니다.

중간에 콜론은 각 경로의 구분자입니다.

export PATH=/opt/local/bin:/opt/local/sbin:/Users/username/Documents/dev/tools/android-ndk-r7b:/Users/username/Documents/dev/tools/android-sdk-macosx/platform-tools:$PATH

대충 이런식으로 쭉 연결해서 써넣고 저장 하시면 됩니다.

테스트를 위해서 명령어를 쳐봅니다.

which adb
which ndk-build

경로가 뜬다면 성공입니다. 
이로써 ndk-build, adb 명령어 등의 프로그램 실행을 위해 경로를 찾아 들어가야하는 수고를 덜었습니다. 

'개발 > iOS' 카테고리의 다른 글

iOS 지역화 삽질 후기  (0) 2013.06.24
Mac OS X Lion 에서 eclipse 를 활용한 C/C++ 개발환경 세팅  (0) 2012.03.08
Posted by 낭만폭풍
|