본문 바로가기

파이어몽키

태블릿용 멀티컬럼 리스트뷰 ItemAppearace 만들기 모바일(폰과 패드)용 목록을 만드는 컴포넌트는 대표적으로 ListView와 ListBox가 있습니다.두 목록 컴포넌트의 차이점은 이름으로 알수 있듯이 목적에 차이가 있습니다. ListView는 View 즉 보여주는 것을 목적으로 하기 때문에 목록을 빠르게 이동할 수 있지만 목록아이템을 꾸미는데 제한적입니다.반면, ListBox는 Box 즉 목록 아이템에 다른 아이템을 담아 자유롭게 목록을 구성할 수 있는 컴포넌트입니다. 목록을 원하는데로 꾸밀 수 있지만 많은 컴포넌트를 담는다면 스크롤이 상대적으로 느려질 수 있습니다. 두 목록 컴포넌트의 목적을 잘 이해하고 사용하시기 바랍니다. ListView는 목록 아이템을 꾸미는데 제한적이라고 했는데요. 그 이유는 TListViewItem은 (TFMXObject를 상.. 더보기
트루타입 폰트(FontAwesome) 파일을 이용해 아이콘 표시하기(안드로이드, iOS) 트루타입 폰트에 그림을 등록해 아이콘으로 사용하는 방식은 최근 웹개발에서 많이 사용됩니다.델파이에서 어떻게 사용할까. 궁금했는데요. 마침 엠바카데로 커뮤니티 블로그에 관련 글이 올라와 소개합니다. http://community.embarcadero.com/index.php/blogs/entry/true-type-font-iconography-for-android-and-ios-apps 간단한 개발팁을 보태면FontAwesome에서 다운로드 후 폰트파일 설치(fontawesome-webfont.ttf 찾아 더블클릭 > 설치)윈도우 유틸리지 중 "문자표" 실행 후 FontAwesome 폰트 선택 후 사용할 아이콘 선택 > 클립보드 복사 델파이에서 Label 등을 추가 후 문자타입(Font.Family)를 ".. 더보기
[XE7] 안드로이드 L 스타일팩 다운로드 최근 안드로이드 L(롤리팝: 5.0)을 적용한 스마트폰이 나오고 있습니다. 엠바카데로에서도 안드로이드 5.0 지원을 위해 핫픽스를 배포하고 안드로이드 L에 맞는 스타일팩을 배포합니다. 안드로이드 L 스타일팩 활용방법은 Sarina DuPont의 글을 참고하기 바랍니다.관련 글안드로이드 L 스타일팩 다운로드(XE7) 안드로이드 L 스타일팩 활용안드로이드 5.0(롤리팝) 지원 핫픽스 더보기
안드로이드에 설치된 앱 목록(AppList)을 표시하는 앱(소스코드 공개) 안드로이드 디바이스에 설치된 앱을 빠르게 찾아 실행할 수 있는 안드로이드 앱의 소스코드를 FMXExpress.com에서 공개하였습니다. 해당 앱은 설치된 앱 목록을 표시하고, 항목 선택 시 앱을 실행합니다. 그리고, 검색창을 통해 키워드로 필터링해 빠르게 앱을 검색할 수 있습니다. 기존에는 안드로이드 디바이스에서 페이지 단위로 넘겨가며(Swipe) 앱을 찾던 수고를 크게 줄일 수 있습니다. 이 앱에서는 다음의 기술을 학습할 수 있습니다.설치된 앱 목록 조회하기설치된 앱의 아이콘 가져오기앱 실행(앱의 패키지명, 앱이름으로)ListView 필터링 하기더 자세한 내용 보기, 프로젝트 소스 다운로드 하기 더보기
[XE7] 안드로이드 4.4 스타일의 대화상자 사용하기 델파이를 이용해 안드로이드 앱개발 시 기본 대화상자(Dialog)는 안드로이드 2.3 버전으로 표시됩니다.이 이슈는 엠바카데로 커뮤니티 3.0 사이트에 등록되었으며 David I가 직접 답변을 달고 해결방안을 소개했습니다. How to get Android 4.4.x style for your XE7 dialog boxes결과 적으로 FMX.Helper.Android.pas 유닛의 GetNativeTheme 함수를 수정해 해결할 수 있습니다.(변경된 소스 적용은 프로젝트에 수정한 파일을 추가해서 간단히 해결할 수 있네요.) 더보기
커스텀 폰트 배포와 사용하기(Android/iOS) 커스텀 폰트를 배포하고 사용하는 방법을 안내하는 글이 있어 소개합니다.배포기능을 이용해 폰트를 배포하고 플랫폼 별로 배포된 폰트를 사용하도록 설정할 수 있습니다.(점점 다양한 종류의 아티클들이 나오고 있어 반갑네요^^) http://firemonkeyblog.blogspot.kr/2014/12/how-to-use-custom-font-in-ios-delphi.htmlhttp://firemonkeyblog.blogspot.kr/2014/12/using-custom-fonts-in-android-delphi.htmlhttp://www.fmxexpress.com/use-and-deploy-custom-true-type-fonts-in-delphi-xe7-firemonkey-on-android-and-ios/ 더보기
[XE5~XE7] FGX 컴포넌트 소개(오픈소스) - ProgressDialog, LinkedLabel 등 러시아의 개발자(Бровин Ярослав)가 오픈소스로 공개한 컴포넌트를 소개합니다.라이선스는 MPL 2.0(소스코드 변경 시 오픈, 사용 시 오픈하지 않아도 됨)TfgProgressDialog, TfgActivityDialog이 - 긴 작업의 진행 상태를 표시합니다 (아이폰 OS, 안드로이드) TfgVirtualKeyboard - 가상 키보드와 단순화 된 작업 (아이폰 OS, 안드로이드) TfgActionSheet이 - 페이지 작업을 선택합니다 (http://fire-monkey.ru/topic/23-kak-sdelat-panel-dlia-vybora-deistvii-na-podob/ ) TfgGradientEdit - 그라데이션을 설정하기위한 더 나은 제어 TfgColorsPanel - 색상의 설정.. 더보기
안드로이드 5.0(Lollipop)에서 실행 시 오류대응 방법 안드로이드의 새로운 운영체제인 롤리팝에서 앱 실행 시 스플래쉬 이미지 이후 예외가 발생해 앱이 정상 구동되지 않는 이슈가 발생하고 있습니다. 간단하게 안내해 드리면안드로이드 5.0(롤리팝)에서 앱 구동 시 EBitmapLoadingFailed 오류가 발생합니다. 해당 오류는 *.fmx에 포함된 TBitmap 데이터를 LoadFromStream으로 읽어 올때 발생하는 것으로 보이며, 해결 방안은 Image등의 컴포넌트에 등록된 이미지를 파일로 배포 후 동적으로 읽어 들이는 방법으로 해결할 수 있습니다. 아래 원문에서는 위 작업을 자동화 할 수 있는 팁과 관련 소스를 제공하며, 더 자세한 내용을 확인할 수 있습니다.(이탈리아어 이므로 구글 번역기를 통해 번역해서 보시기 바랍니다.)http://blog.del.. 더보기
[XE7] 자체적으로 원격푸쉬알림(GCM, APN) 전송 구현방법 스페인의 델파이 개발자(fgonzalez.visiblogs.com/)가 자체적으로 원격푸쉬 알림 기능을 구현한 동영상을 소개합니다. RAD Studio에서 원격 푸쉬 알림(Remote Push Notification)을 구현하기 위해서는 XE6 버전에 추가된 BaaS 클라이언트 컴포넌트를 통해 가능했는데요. 이 동영상에서는 IdHttp(안드로이드), TCPClient(iOS) 컴포넌트 등을 활용해 푸쉬 메시지를 전송하고, System.PushNotification 클래스를 활용해 푸쉬 메시지를 수신하는 내용을 소개합니다. 동영상은 스페인어로 이야기를 합니다. 팁을 드리면 유투브의 자막을 한국어로 설정하고 화면과 코드위주로 보시면 충분히 이해할 수 있습니다.원글에서 동영상 확인하기 - http://lfgo.. 더보기
파이어몽키 안드로이드 네이티브 컴포넌트(오픈소스) - DPF 파이어몽키 멀티-디바이스 앱 개발의 장점은 하나의 소스코드로 여러개의 플랫폼을 개발할 수 있다는 것입니다.그리고, 또다른 장점은 필요한 경우 네이티브 API와 SDK를 사용할 수 있다는 장점도 있습니다. 위 장점을 최대한 활용한 오픈소스 프로젝트를 소개합니다.D.P.F Delphi Android Native Components이 오픈소스 프로젝트에서는 안드로이드 네이트브 기능(SDK, API)를 이용해 네이티브 UI와 기능을 갖는 컴포넌트를 제공합니다.만약, 안드로이드 전용 앱을 만드는 경우 해당 오픈소스를 활용한다면, 기본 컴포넌트 외에도 더 풍부한 컴포넌트를 이용해 앱을 만들 수 있습니다. Some components: + Added TDPFJAlertDialog + TDPFJAnalogClock +.. 더보기
파이어몽키 iOS 네이티브 컴포넌트(오픈소스) - DPF 파이어몽키 멀티-디바이스 앱 개발의 장점은 하나의 소스코드로 여러개의 플랫폼을 개발할 수 있다는 것입니다.그리고, 또다른 장점은 필요한 경우 네이티브 API와 SDK를 사용할 수 있다는 장점도 있습니다. 위 장점을 최대한 활용한 오픈소스 프로젝트를 소개합니다.D.P.F Delphi iOS Native Components이 오픈소스 프로젝트에서는 iOS 네이트브 기능(SDK, API)를 이용해 네이티브 UI와 기능을 갖는 컴포넌트를 제공합니다.만약, 안드로이드 전용 앱을 만드는 경우 해당 오픈소스를 활용한다면, 기본 컴포넌트 외에도 더 풍부한 컴포넌트를 이용해 앱을 만들 수 있습니다. Some Wrapped Frameworks: * AddressBookUI.framework * AddressBook.fra.. 더보기
엔터프라이즈 DBMS에 직접 접속할 수 있는 방법(컴포넌트 소개) 모바일 앱에서 엔터프라이즈 DBMS(SQL Server, Oracle, Interbase Server 등)에 접속하기 위해서는 멀티티어 기술을 이용하는 것이 효과적입니다. 모바일 앱은 모바일 특성상 작은 하드웨어 자원을 사용하고, 연결이 보장되지 않은 네트워크를 이용합니다.그래서 앱에서는 필요한 최소한의 데이터만 받아 처리하는 것이 효과적이고, 언제 끊어 질지 모르는 네트워크 상에서 트랜젝션을 처리하기 위해서는 예외처리에 많은 노력이 들어갈 것입니다. 위의 이유로 모바일에서 엔터프라이즈 데이터 이용을 위해서는 멀티티어 환경으로 서버에서 모바일을 관리하는 것이 효과적입니다. 델파이를 이용한 모바일 앱에서는 데이터 스냅 또는 REST 클라이언트 기술을 이용해 멀티티어를 이용할 수 있습니다. 하지만, 네트워크.. 더보기
구글 매터리얼 아이콘 753종 구글에서 공개한 753종의 매터리얼 아이콘입니다. 모바일 앱 개발 시 유용하게 사용할 수 있습니다. 다운로드 : https://github.com/google/material-design-icons/releases/tag/1.0.0확인 : http://google.github.io/material-design-icons/ 더보기
안드로이드 라이브러리(jar 파일) 활용 사례(안드로이드 열기 대화상자 구현) 파란크리스마스 블로그를 운영하시는 파란산타님께서 안드로이드 라이브러리를 활용해 열기 대화상자를 구현한 내용이 있어 공유합니다.(안드로이드 라이브러리 사용하는 내용을 아주 쉽게 정리해 주셨습니다.) 본문에서는 파이어몽키의 안드로이드 플랫폼에서는 열기 대화상자(TOpenDialog)를 제공하지 않기 때문에 오픈소스인 android-file-dialog의 라이브러리(*.jar)를 이용해 열기 대화상자를 구현한 내용입니다.(아래 내용을 참고하시면 직접 만든 안드로이드 라이브러리를 델파이에서 사용하는 방안을 익힐 수 있습니다.)FireMonkey Android - Open Dialog (Java Jar 라이브러리 사용) - http://bluexmas.tistory.com/427 더보기
[앱테더링] VCL앱을 모바일앱으로 쉽게 확장할 수 있는 앱테더링 자세히 살펴보기! 앱테더링(App Tethering)?앱 테더링은 2개의 개별적인 앱을 서로 연결(테더링)해서 데이터를 주고 받을 수 있는 기술입니다. 앱테더링 기술을 이용해 VCL어플리케이션에서 모바일로 데이터를 제공하면 모바일에서 뷰어만 빠르게 만들어 아주 빠르고 쉽게 모바일앱을 개발할 수 있습니다.(모바일 앱의 동작을 다시 VCL 앱으로 전송해 사용자의 액션과 모바일 이미지등을 VCL 앱에서 사용하면 더 강력한 시스템으로 탈바꿈할 수 있습니다.)❑ 앱테더링 컴포넌트앱 테더링은 TTetheringManager, TTetheringAppProfile 두개의 컴포넌트를 통해 구현할 수 있습니다. 이번글에서는 각 컴포넌트의 자세한 속성과 이벤트에 대해서는 다루지 않습니다. 하지만 아래의 "앱테더링 데모를 통해 기능 살펴보기.. 더보기
여러분의 앱에서 클라우드 서비스에 연결하세요.(REST Client이용) 최근 다양한 웹서비스와 클라우드에서 JSON 기반의 RESTFul 인터페이스를 제공합니다. 오늘은 짐매키트가 발표한 동영상을 통해 REST 클라이언트로 클라우드 서비스에 연결하는 내용을 소개합니다.짐은 대표적인 클라우드 서비스인 드랍박스에 REST 클라이언트 라이브러리를 통해 모바일앱에서 연결하는 데모를 진행합니다.이 글에서는 아래 내용을 포함합니다.레스트 디버거(RESTFul 사이트 분석 도구)를 통한 웹사이트 분석클라우드 서비스(드랍박스) 연동TOAuth1Authenticator 컴포넌트를 이용한 OAuth 1.0 인증과정 소개아래의 동영상을 통해 여러분의 앱에서 클라우드 서비스(드랍박스)에 연결하는 방법을 익혀 보시기 바랍니다. http://www.youtube.com/watch?v=sp-EDTKy.. 더보기
동영상강좌) 코드아카데미: 앱개발에 집중하고, 백엔드는 클라우드에 맡기세요! 지난 2014년 7월에 제가 진행했던 코드아카데미 동영상입니다. 모바일 백엔드 서비스(BaaS)에 대한 개념과 사용하는 방법을 데모와 함께 진행합니다.여러분의 앱에 클라우드를 연결해 백엔드 개발에 대한 부담을 덜어보세요. 총 4편으로 구성되었습니다.BaaS와 Kinvey 자세히 알아보기사용자관리-사용자 인증과 관리방법클라우드 기반 스토리지푸쉬알림 사용하기 http://www.youtube.com/playlist?list=PLpSzuJvn7BTwNO6lw9dKHfqFf4bkrJhw2 더보기
블루투스 LE와 클라우드를 이용한 수화물 무게 기록 앱 샘플 여행을 할때 짐을 챙기는 것도 중요하지만 정해진 수화물 무게를 맞추는 것도 중요합니다.^^어떤 물품이 얼마나 나가는지 기록하면 수화물 무게를 계산할때 아주 유용하겠네요. 이번 글에서는 블루투스 LE를 지원하는 저울(Wahoo Balace scale)과 연동해 수화물 무게를 얻어와 클라우드에 저장하는 모바일 앱을 RAD Studio XE7으로 만드는 샘플을 소개합니다. 이 앱은 총 3개의 탭으로 구성되었습니다.Weight Scale - 수화물 무게를 표시하고 수화물의 내용을 저장Logged Data - 기존의 수화물 데이터를 검색하고 목록을 표시Settings - 블루투스 데이터를 표시다양한 UI 구성요소와 TBluetoothLE 컴포넌트, BaaS 컴포넌트가 포함되었고 TStyleBook(custom j.. 더보기
안드로이드 기기에 설치된 앱 목록표시와 실행하기 파이어몽키 개발자 커뮤니티 네이버 카페(http://cafe.naver.com/delphifmx)에서 가을이다 님이 올려주신 내용입니다.(RAD Studio 모바일(멀티-디바이스) 개발에 관심이 있으시면 반드시 가입해야 하는 까페입니다. 가입하세요.) 안드로이드 기기에 설치된 앱의 목록을 표시하고 앱을 실행하는 예제입니다. uses Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, FMX.Helpers.Android, AndroidApi.Helpers, Androidapi.JNIBridge; // 중략 var PM: JPackageManager; mainIntent: JIntent; LaunchIntent: JIntent; pkgApps.. 더보기
RAD Studio XE7에서 추가된 안드로이드 기능 익히기(동영상) RAD Studio XE7에서 다양한 안드로이드 기능 추가/개선 되었습니다.아래 동영상을 통해서 개선된 내용에 대한 소개와 몇가지 기능은 데모로 자세히 설명합니다.안드로이드 스플래쉬 스크린안드로이드 몰입모드(전체화면)안드로이드 라이브러리(JAR, Java class)를 RAD Studio에서 사용하는 Java2OP.exe 사용방법 RAD Studio XE7에서 추가된 대표적인 안드로이드 기능은 아래와 같습니다.구글 모바일 광고 SDK(XE6에서도 Hotfix로 변경)몰입모드-전체화면(안드로이드 KitKat 4.4 이상)안드로이드에서 스플래쉬 스크린 지원푸시알림과 광고 프로젝트 옵션프로젝트 매니저에서 자바 라이브러리 추가Java2OP tool: 자바 안드로이드 클래스를 오브젝트 파스칼 인터페이스로 생성참고.. 더보기