본문 바로가기

파이어몽키

BaaS 컴포넌트(TBackendFiles)를 이용해 파일 업로드/다운로드 샘플 델파이(C++빌더) XE6에 추가된 BaaS 클라이언트 컴포넌트 중 TBackendFiles 컴포넌트를 활용해 BaaS에 파일을 업로드 하고 다운로드 하는 샘플입니다.개인적으로 큰 관심을 갖는 BaaS에 샘플이 하나하나 추가되어 기분이 좋네요^^(앞으로 다양한 활용방안과 잠재력을 갖고 있는 서비스라고 생각합니다.) Uploading images to the cloud with BaaS in RAD Studio XE6http://blogs.embarcadero.com/sarinadupont/2014/06/20/uploading-images-to-baas-providers-in-delphi-xe6/ 관련자료Baas(Backend as a Service)와 RAD Studio(GCM, APN, 푸시알림 가능) 더보기
연락처(주소록)을 제어하는 방법(안드로이드, iOS) 연락처에 접근하는 방법을 문의하셔서 해당 내용 안내해드리고 공유차 기록합니다. http://www.fmxexpress.com/access-device-contacts-with-delphi-xe5-firemonkey-on-android-and-ios/ http://www.fmxexpress.com/access-android-contacts-manager-with-firemonkey-in-delphi-xe5/ http://www.fmxexpress.com/access-ios-contacts-with-firemonkey-in-delphi-xe5/ 더보기
Home Screen Navigation - UI Design 참고 앱의 메인화면을 아이콘을 활용해 멋지게 구성하는 내용을 소개합니다. 아래와 같이 구성하는 내용인데요.아이콘들의 구성을 위해서 TGridPanelLayout 컴포넌트를 이용하고, 아이콘은 ImageControl을 이용해 구성됩니다. 자세한 내용은 아래 링크를 통해 확인하세요.http://blogs.embarcadero.com/sarinadupont/2014/06/16/mobile-user-interface-design-home-screen-navigation/ 더보기
당겨서 새로고침(Pull to refresh) - 안드로이드, iOS 구현 이전에 iOS용 당겨서 새로고침 글을 소개해 드렸는데요.안드로이드에서 안된다는 말씀이 있어 찾아보니 Android와 IOS를 동시에 사용할 수 있는 내용이 있어 소개해 드립니다. 첫번째는, 유튜브를 통해 찾은 내용입니다.당겨서 새로고침을 구현하는 내용을 동영상을 통해 안내합니다.UI 구성 뿐 아니라 데이터를 가져오는 부분까지 설명을 해줍니다.단, 이야기하는 언어가 한국어/영어가 아니므로, 화면만 보시며 따라하셔야 합니다. 두번째는 이전에 소개해 드린 iOS용 당겨서 새로고침을 안드로이드에서도 사용할 수 있도록 수정한 내용입니다.http://www.fmxexpress.com/swipe-down-to-refresh-listview-with-delphi-xe5-firemonkey-on-android-and-i.. 더보기
ListView의 Header를 첫글자로 정렬하는 방법 TListView에서 첫 글자로 정렬하는 팁이 엠바카데로 커뮤니티에 올라왔습니다. 핵심은 라이브 바인딩 시 CustomFormat에서 SubString을 이용하는 것인데요.이번은 Header를 통한 정렬이기 때문에 FillHeaderCustomFormat에서 SubString으로 첫 글자를 분리하여 표시하고 정렬할 수 있습니다. 한글의 경우 ㄱ, ㄴ, ㄷ, ... 순의 정렬이 필요할 것 같은데요. 이 부분은 한국 개발자 분들이 시도해봐야 할 것 같습니다.^^ http://community.embarcadero.com/index.php/article/articles-tutorials/943-adding-alphabetical-sorting-with-a-z-headers-to-your-lists 참고로 엠바.. 더보기
Baas(Backend as a Service)와 RAD Studio(GCM, APN, 푸시알림 가능) BaaS(Backend as a Service)BaaS는 Backend as a Service 약자로 모바일에서 필요한 Backend 기능을 추상화하여 표준 API(JSON 등)로 제공하는 클라우드 서비스의 한 종류 입니다. Backend as a service - http://en.wikipedia.org/wiki/BaaS Backend as a service (BaaS), also known as "mobile backend as a service" (MBaaS),[1][2][3] is a model for providing web and mobile app developers with a way to link their applications to backend cloud storage and AP.. 더보기
FireMonkey 배포시 간단한 팁(선택적 배포-설정파일 유지) 오늘은 간단한 팁을 공유합니다. 파이어몽키를 이용해 앱 개발 후 컴파일(배포) 시 모든 파일들이 덮써져 버립니다. 환경파일(INI) 또는 임베디드 디비파일등의 테스트 데이터는 유지되야 할 경우가 많은데요. 꽤 불편합니다. 하지만, 배포 관리자의 툴바에 선택적으로 파일을 배포하는 기능버튼이 있어 안내합니다.아래 그림과 같이 버튼 제일 우측에 Change Overwrite value for selected Items라는 힌트를 가진 버튼이 있구요.직역해 보면 "선택된 항목의 덮어쓰기 값을 변경" 정도가 됩니다. 목록에서 파일을 선택하고 해당 버튼을 누르면 필드 제일 오른쪽의 OverWrite 항목이 Always Never로 변경됩니다. 한가지 팁을 더 드리면모바일 기기가 연결된 경우 툴바의 Connect().. 더보기
파이어몽키 안드로이드 SDK Full Wrapper 파일 RAD Studio XE7 에서는 Java2OP라는 이름으로 자바라이브러리를 델파이 브릿지 파일로 컨버젼하는 툴을 기본 제공합니다. - http://blog.hjf.pe.kr/268 아래 글은 XE6 이전 버전 사용자들이 참고할 수 있습니다. 파이어몽키 자료가 상당히 풍부한 FMXExpress(http://www.fmxexpress.com)에서 안드로이드 SDK 전체를 Object Pascal(Delphi)로 변환한 소스코드를 공개했습니다.파이어몽키로 개발할 경우 제공되는 컴포넌트와 라이브러리 외에도 네이티브 SDK를 직접 제어할 수 있는데요. 그러기 위해서는 안드로이드 SDK를 오브젝트 파스칼에서 사용할 수 있도록 변환(Wrapping)하는 작업이 선행되어야 합니다.FMXExpress에서는 Java2P.. 더보기
안드로이드 ARM 에뮬레이터 속도를 올리는 8가지 팁 안드로이드 개발 시 많은 안드로이드 장비(device)에서 테스트 하지만 그렇지 못한 경우가 많습니다. 이 경우 안드로이드 에뮬레이터를 이용할 수 있는데요. 안드로이드 에뮬레이터가 너무 느려서 고생을 합니다. 이 문제를 다소 완화할 수 있는 내용이 있어 소개합니다. delphi.org를 운영하는 Jim McKeeth는 다음과 같이 안드로이드 에뮬레이터 속도를 올리는 8가지 팁을 소개했습니다. 실제 하드웨어를 사용 가상머신에서 에뮬레이터를 실행하지 말 것 가상머신에서 돌려야 한다면, Parallels desktop 9을 사용 호스트 GPU를 사용 OpenGLES 라이브러리를 복사 Mac에서 에뮬레이터를 실행 안드로이드 이전 버전으로 실행 AVD 하드웨어 구성을 조정 할 것http://delphi.org/2.. 더보기
스노우크래프트(Snow Craft) for 안드로이드(소스포함) 델마당(http://www.delmadang.com)을 통해 양병규님이 Snow Craft 라는 게임을 Delphi XE5로 만드시고(Clone) 공개하셔서 소개합니다. 아마 예전에 윈도우 버전으로 작업했던 부분을 안드로이드로 포팅하신 듯 합니다. 제가 가지고 있는 넥서스7 1세대에서도 아주 잘 돌아가고 무엇보다 게임이 재밌네요^^소스를 열어보시면 배울 만한 것들이 많이 있습니다.(아주 좋은 소스코드를 공개해 주신 양병규님에게 다시한번 감사드립니다.) 소스코드 아이콘 경로가 절대경로로 잡혀 있어 델마당 자료실의 첨부파일에서 절대경로만 수정하여 올립니다.▶ 클래스 상속클래스 상속을 통해 TBoy와 TSnow, TBunker의 공통된 기능을 TCharacter에서 구현되었습니다.왜 클래스를 사용해야 하는지와.. 더보기
델파이 물리엔진 Box2d 소개. FMX, VCL 용(오픈소스) Qianyuan Wang은 몇 년전 델파이 VCL용 2D 물리엔진을 오픈소스로 진행하였습니다.델파이 - https://code.google.com/p/box2d-delphi/C++ - https://code.google.com/p/box2d/ (원 프로젝트는 C++ 기반이었던 것 같습니다.) 위의 코드를 멀티플랫폼 용 Firemonkey용 소스코드로 변환되었다는 반가운 소식을 전합니다.(oDesk 엔진니어 참여)제가 간단하게 테스트 해보니 테스트가 벅찰 정도로 다양한 샘플이 준비되어 있구요. 별도의 라이브러리 추가 없이 소스코드만으로 구현이 가능합니다. 여러분의 모바일 앱과 어플리케이션에 물리엔진을 장착해 보세요. 다운로드 : http://www.fmxexpress.com/wp-content/upload.. 더보기
Instagram Filter 효과와 같은 앱(소스 포함) 인스타그램 앱과 같이 사진에 다양한 필터를 적용하는 앱에 대한 소스코드가 공개되 었습니다.아시다 시피 파이어몽키에는 60여종의 다양한 이펙트(TEffect)가 제공(62개의 파이어몽키 이미지 효과(Effects))됩니다. 이펙트를 이용해 아주 쉽게 위와 같은 동작을 하는 앱을 만들 수 있습니다. 간단한 구현 원리를 추가하면, 첫번째 탭에서 원본이미지에 TSelection 컴포넌트를 올리고 영역을 지정합니다.두번째 탭에서 상단의 이미지에 앞에서 선택한 영역의 이미지를 표시하고, 아래에는 다양한 효과(TEffect)가 적용된 이미지를 놓고, 이미지 선택 시 TFilterEffect.ProcessEffect 메소드를 적용합니다.세번째 탭에서는 이펙트가 적용된 이미지를 ActionList의 ShowShareSh.. 더보기
모바일 Gesture로 메뉴를 표시/감추기(소스공개) 제스쳐(손가락 끌기)로 좌측 메뉴를 표시하고 감추는 샘플 동영상 및 코드입니다. 관련링크원문 - http://joseleon.es/?p=236 소스코드 - http://joseleon.es/wp-content/uploads/2013/10/drawer_gestures.zip 더보기
Sliding Popup menu 디자인(소스 공개) 상단의 버튼을 누르면 슬라이드 형태로 팝업메뉴가 나오는 방식입니다. 아래의 동영상으로 자세한 내용 확인할 수 있습니다. 관련링크원글 - http://joseleon.es/?p=239소스코드 - http://joseleon.es/wp-content/uploads/2013/10/popupmenu.zip 더보기
Bitmap의 Pixel에 접근(TBitmap.Map, TBitmapData) 이 내용은 FireMonkey 관련 내용입니다. Bitmap에 Pixel 단위로 접근하는 방식을 소개합니다.Bitmap의 Map 메소드를 이용해 TBitmapData 객체를 얻어와 제어하는 방식입니다. 아래의 링크를 참고하시면 더 자세한 정보 얻으실 수 있습니다. 참고링크http://docwiki.embarcadero.com/CodeExamples/en/FMX.AlphaColorToPixel_(Delphi)http://docwiki.embarcadero.com/Libraries/en/FMX.Graphics.TBitmap.Map 더보기
구글맵과 3D 연동(느슨한) 구글맵과 3D를 연동해 아주 색다르게 맵을 표현하는 데모 앱입니다.실제 구동하면 지도가 회전되고 그 중심에 TCone으로 현재의 위치를 표시합니다. 샘플을 통해 아래의 내용을 확인하실 수 있습니다.위치센서로 위도와 경도를 읽는다.구글맵에서 주변 지도를 얻는다.지도에 InvertEffect효과를 주어 위의 화면과 같이 표현한다.위의 작업은 AnonymousThread로 처리한다.기타 3D layer 구성과 FloatAnimation을 이용한 회전 참고링크http://www.fmxexpress.com/alternate-reality-map-3d-demo-for-delphi-xe5-firemonkey-on-android-and-ios/ 더보기
메신저 형태의 대화상자 표시 메신저 형태의 대화를 표시하는 방법을 소개합니다. TVertScrollBox 위에 TCalloutRectangle을 올리고, TText와 TImage로 표현했는데요.더 다양한 컨트롤들로 확장할 수 있을 것 같습니다. 참고하셔서 더 멋진 UI를 구성하시기 바랍니다. http://www.fmxexpress.com/build-a-messenger-layout-like-whatsapp-using-delphi-xe5-firemonkey-on-android-and-ios/ 더보기
MP4 Tag Library(Win32/64, OSX, iOS, Android 사용가능) http://www.3delite.hu/Object%20Pascal%20Developer%20Resources/download.html#mp4taglibrary 더보기
무선으로 안드로이드 앱 디버깅 하기(RAD Studio XE5) 안드로이드 앱 개발 시 매번 USB 케이블을 꽂고 디버깅하는 것이 아니라 WIFI환경의 무선인터넷으로 안드로이드 앱을 테스트, 디버깅하는 방법을 소개합니다.두개의 블로그 포스팅에서 내용을 확인할 수 있습니다. http://delphi.org/2013/10/wireless-android-debugging-with-delphi-xe5/ http://blog.devart.com/remote-debug-of-android-application-in-rad-studio-xe5-via-wifi.html 더보기
Flappy Firemonkey 게임앱 소개(소스 공개) Flappy bird와 비슷한 게임인 Flappy firemonkey라는 게임이 파이어몽키로 만들어 졌습니다.아주 간단하면서도 중독성 있는 게임이죠^^ 현재는 TBitmap에 Assigned하는 방식으로 캐릭터를 구현했구요. 향후 TSprite 컴포넌트나 TBitmapListAnimation에 변경할 계획을 갖고 있다고 합니다.화면을 탭하면 뛰어오르고 서서히 기울어지며 떨어지는 캐릭터를 어떻게 구현했는지 공개된 소스를 통해 확인하면 좋을 것 같습니다.관련 링크http://www.fmxexpress.com/flappy-bird-clone-source-code-for-delphi-xe5-firemonkey-on-android-and-ios/http://www.fmxexpress.com/wp-content/u.. 더보기