Nano Blog - 오병우

iOS에서 MIDI를 처리하기 위한 CoreMidi API를 Wrapping해 놓은 클래스로 소스 코드가 공개되어 있다.


Midi Device를 붙여서 사용할 때 유용할 것으로 생각됨


설명:

http://goodliffe.blogspot.kr/2010/10/using-coremidi-in-ios-example.html


소스코드:

https://github.com/petegoodliffe/PGMidi



그냥 게임이나 음악 앱에서 미디 악기의 소리만 낼 때는 다음 글을 참조할 것.


[ios] Play Midi Note : 미디 (midi) 노트 (note, 악보) 출력

http://bwoh.tistory.com/36


[ios] Play Midi Note with Instrument : 미디 (MIDI) 노트 (note, 악보) 악기 음색 출력

http://bwoh.tistory.com/37

File-Export 로 apk 파일 생성


https://play.google.com/apps/publish


iOS보다 간단해서 이것만은 좋다.

Project Navigator의 Supporting Files에서 *-Info.plist 파일 클릭

마우스 오른쪽 버튼 눌러서 Add Row


다음과 같이 만들어 줌


소스 코드에 다음 추가



단 백그라운드 상태에서 전화가 오면 다시 재생되지 않음


전화 온 후에 다시 오디오를 재개하려면 다음 글 참조 

http://cafe.naver.com/mcbugi/237796

(delegate와 NotificationCenter 사용)



플랫폼에 상관없이 데이터를 공유할 수 있는 앱. 강추!!!



데이터가 공유되므로 매우 유용하게 사용할 수 있다.


'모바일 앱 추천' 카테고리의 다른 글

[ios] MusicStudio  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25

뮤직 스튜디오




거라지 밴드와 샘플 탱크, 그리고 뮤직 스튜디오.모두 말이 필요없다. 정말 끝내주게 좋다.

뮤직 스튜디오 free 버전 사용해 봤는데 샘플링에 발군! 사고 싶을 뿐...


http://www.youtube.com/user/xewton


'모바일 앱 추천' 카테고리의 다른 글

[PC, Mac, iOS, Android] Evernote  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25


거라지밴드
 
   

말이 필요없는 필구매 앱.


'모바일 앱 추천' 카테고리의 다른 글

[PC, Mac, iOS, Android] Evernote  (0) 2012.12.25
[ios] MusicStudio  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25

AmpliTube


일렉기타 있다면 필구!

'모바일 앱 추천' 카테고리의 다른 글

[ios] MusicStudio  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25
[iOS] Synse  (0) 2012.12.25

SAMPLETANK





신디사이저를 넘어선 워크스테이션급!


http://www.youtube.com/user/ikmultimedia


'모바일 앱 추천' 카테고리의 다른 글

[ios] MusicStudio  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25
[iOS] Synse  (0) 2012.12.25

MOOG


신디사이저가 아이폰속으로...

'모바일 앱 추천' 카테고리의 다른 글

[ios] MusicStudio  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[iOS] Synse  (0) 2012.12.25

[iOS] Synse

모바일 앱 추천2012. 12. 25. 21:41

Synse

음악과 미술의 만남. 예술이다.


'모바일 앱 추천' 카테고리의 다른 글

[ios] MusicStudio  (0) 2012.12.25
[ios] GarageBand  (0) 2012.12.25
[ios] AmpliTube  (0) 2012.12.25
[ios] SampleTank  (0) 2012.12.25
[ios] AniMOOG V2  (0) 2012.12.25

화면에는 컬러로 나오는데 프린트하니 줄번호만 파란색으로 나오고 나머지는 검은색이어서 찾아 보았더니 방법이 있었다.

1. 도구 - 확장 관리자

2. 검색창에 Color Printing 검색

3. 설치

 

따로 다운로드 받을 수도 있는 듯..

http://visualstudiogallery.msdn.microsoft.com/00ec88c2-1553-47d2-8170-3c5baa0c6e44/

 

Known Issues에도 나와 있듯이, 설치한 뒤에 줄번호 프린트 체크박스가 안보인다. 


또 찾아보니 해결 방법이 써있어서 그대로 따라 했다.


도구 - 옵션 - 텍스트 편집기 - 모든 언어 - 줄번호 (체크박스 선택)


성공!!!

 

이클립스 실행

오른쪽 위에서 DDMS 버튼 누르고

디바이스 선택한 후에 카메라 모양 아이콘 누르면 됨.


그 뒤에는 Refresh, Save 반복


안드로이드 앱 apk 파일은 50MB이내여야 한다.


50MB이내 더라도 에뮬레이터의 열악한 환경에서는 에러가 발생할 수 있다.


이미지가 많아지면서 apk 파일의 용량이 증가하고 다음과 같은 에러가 발생하여 에뮬레이터에서 실행이 불가능하게 되었다.


Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE


구글링해보니 몇 가지 방법이 있었다.


1. AndroidManifest.xml 파일 수정

<manifest> 태그에 android:installLocation="preferExternal"를 추가한다.


단, 이걸 하려면 에뮬레이터에서 SD Card의 용량을 지정해 두어야 할 것으로 예상된다. SD Card 용량을 너무 크게 잡으면 하드 디스크가 낭비되니 주의!!


2. 메뉴 Run-Run Configurations에서 해당 앱 선택하고 Target 탭 눌러서 맨 밑에 있는 Additional Emulator Command Line Options에 다음을 추가한다.


-partition-size 1024 


내 경우에는 해결되지 않았다.


3. log 파일 삭제 방법


cmd 실행하여 android-sdk-windows\platform-tools폴더 들어가서  adb shell 실행

cd data/log

rm *


에뮬레이터에 있는 로그 파일들을 삭제하는 방법인데, 내 경우엔 log 폴더 자체가 없어서 실행할 수 없었다.


1번을 사용하여 간신히 앱은 에뮬레이터에 올라갔는데...비트맵을 로딩하니 VM의 heap을 초과했다고 강제 종료된다...ㅠ.ㅠ


겔럭시 S2에서는 동작했으니 exception 처리 정도로 마무리해야 할 듯...


https://play.google.com/apps/publish/에 접속한다.


e-mail과 패스워드를 입력하고 Sign in을 눌러 로그인한다.


앱의 가운데 부분에 다운로드 수와 현재 디바이스에 깔려 있는 수가 나온다.



Scheme을 변경해야 한다.


디바이스와 시뮬레이터 고르는 곳에서 Edit Scheme 선택.



Build Configuration을 Release로 변경한다.



앱등록시 이렇게 변경하여 Build 하고...


디렉토리 ~~~/Release-iphoneos/ 밑에 있는 패키지를 압축하여 업로드한다.


iPhone 앱을 등록할 때 가장 문제가 많은 부분이 CodeSign 부분일 것이다.

일단, itunesconnect.apple.com에서 Manager Your Applications를 통해 기본적인 것은 세팅해 놓아서  Ready for Upload까지 진행한 것을 가정하겠다.


아참! Universal로 했으면 iPhone 및 iPad 스크린샷을 모두 올려야 한다. 그리고, 사이즈도 레티나 사이즈로 변경되어서, 이전에 올려 놓았던 iPhone 스크린샷은 크기가 맞지 않는다고 저장이 되지 않는다...ㅠ.ㅠ 다시 캡쳐 받는 수밖에...

iOS Simulator에서는 캡쳐가 되지 않으므로, command + shift + 4 누른 후에 space bar를 눌러 전체를 캡쳐한 후에 어플리케이션에 기본으로 들어있는 GIMP를 사용해서 정해진 사이즈대로 잘라낸다.

(Google에 찾아보면 .sh 파일과 NSLog를 사용하여 캡쳐하는 방법도 있기는 하다.)


아무튼 원래 주제로 돌아와서... 앱을 동록하는 과정을 살펴 보자.

기본적인 이론은.... Distribution !!!!!! 이다. (Developer가 아닌....)


1. Build할 때는 Distribution Configuration 사용



추가: 이렇게 한다고 되는 것이 아니라 Scheme을 변경해 줘야 한다. Distribution이 없으면 Release 사용

다음의 링크를 보고 따라하면 된다.

http://bwoh.tistory.com/21



2. Code Signing Identity를 "iPhone Distribution:xxxxx"으로 세팅


문제는 2번을 세팅하기 위해서 아래와 같이 iPhone Distribution으로 시작하는 Provisioning Profile이 있어야 한다는 거다. 이게 없으면 세팅할 수 없다.


Xcode의 Organizer를 띄웠을 때 다음과 같이 프로비저닝 프로파일이 있어야 한다.


프로비저닝 프로파일을 확인하려면 https://developer.apple.com/ios/manage/provisioningprofiles/viewDistributionProfiles.action 에 접속한다.



위의 그림과 같이 프로비저닝 중에서 Distribution에 Active한 프로파일이 있어야 한다.

없으면, 오른쪽 위의 "New Profile"버튼을 눌러서 만들어야 한다.


버튼을 누르면 다음과 같이 나온다.


이 때, 중간에 있는 Distribution Certificate에 인증서가 정상적으로 나타나면 다행인데... 여기에 새로 만들라고 한다면...


https://developer.apple.com/ios/manage/certificates/team/distribute.action

Certificates의 Distribution Tab 여기에 가서 만들어 줘야 한다.


Certificate는 어플리케이션 - 유틸리티 - 키체인 접근에서 만든다. 아니면 있는 것을 Submit한다.

키체인 접근  메뉴 - 인증 지원 - 인증 기관에서 인증서 요청



일반적인 과정을 쫓아가서....



키체인 접근에서도 Certificate가 Developer용과 Distribution용 두개가 있어야 한다. (개발자이면서 배포도 동시에 할 경우...)


아무튼, 준비가 되었으면  Certificate는 developer.apple.com에서 다운로드 받아서 키체인 접근에 추가하고....

Provisioning Profile은 developer.apple.com에서 다운로드 받아서 Xcode의 Organizer에 있는 왼쪽 맨 위에 있는 Library의 Provisioning Profile에 추가한다.


애플사의 공식 도움말은 다음과 같다.

https://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/ios_development_workflow


이렇게 세팅을 했다면 빌드를 했을 때 성공한다. 


어디에 만들어 놓은지 알 수가 없으니 Products에서 타겟에 Control+ 마우스 버튼 눌러서 Show in Finder를 클릭한다.


타겟을 압축한다.


압축 파일을 만들었으면 이제 그 파일을 업로드할 차례이다.


Application Loader라는 툴을 사용한다.


itunesconnect.apple.com에서 Manage Your Applications에 들어가면 맨 밑에 Download Application Loader가 있다. 다운로드 받았더니만 버전이 안 맞는다...ㅠ.ㅠ


그 옆에 보면 Video Tutorials에 Adding an App과 Delivering Your Binary가 있다.

Delivering Your Binary 비디오를 보다보면 Xcode를 깔 때 자동으로 설치된 Application Loader의 경로가 나온다.

https://itunesconnect.apple.com/downloads/Deliver_Binary.mov?itcKey=1341916966_fc3b9515fdd13a3f03a9d98eb93c1e8a


실행 시켜서 로그인하면 다음과 같은 화면이 나온다.



중간에 있는 Deliver Your App을 누른다...

이미 올려 버려서 나타나질 않는데... 쉽게 따라갈 수 있다


아무튼 이때 중요한 것은 아까 타겟을 압축해 둔 파일을 선택한다는 것이다.

폴더를 찾아 들어갈 때 유사한 이름들이 있으니 잘 확인해서 들어갈 것!!


뭔가 오래 걸리면 제대로 되는 것이다~

Code Sign 에러가 발생하면 금방 끝난다.


Code Sign 에러가 발생하면 iTunes Connect에서 업로드하려고 했던 버전과 타겟의 버전이 맞게 되어 있는지 확인해 볼것...

이것 저것 구글링하면서 문제가 없는지 찾아보는 수 밖에....


Good Luck!!!


갑자기 Code Sign Error나서 당황했다.


http://liebus.tistory.com/entry/%EC%95%A0%ED%94%8C-Certificate%EB%93%B1%EB%A1%9D-Devices-App-ID-Provisioning-%EB%93%B1%EB%A1%9D-%EA%B3%BC%EC%A0%95


기본적으로는 위의 링크대로 하면 되는데..안되어서 결국은 다음의 방법으로 해결했다.

위의 링크처럼 Key Chain, Certificate, Provisioning다 만들어 놓은 뒤에...


https://developer.apple.com/ios/manage/provisioningprofiles/index.action


여기에서  Active로 되어있는 것을 다운로드 받고 오거나이저의 위에 있는 (디바이스에 있는 것 말고...) Provisioning Profile에 등록하니 되었다.