본문 바로가기

안드로이드

[FMX] 안드로이드 권한 모델 적용 방법 파이어몽키로 안드로이드 앱 개발 시 장치에 접근하는 기능(예, 카메라 이용, 블루투스 이용 등) 개발 시 권한 설정이 필요합니다. 기존에는 Project > Options > Uses Permissions에서 필요한 권한을 설정하는 방식이었지만, 안드로이드 API 최신버전은 런타임 시 권한을 요청하는 매커니즘으로 변경되었습니다. 기존의 권한 모델은 설치 시 전체 권한을 승인하는 방식이었습니다. 새로운 권한 모델은 기능 사용 시 개별 권한을 묻는 방식으로, 사용자는 기능 별 허용 및 거부가 가능해졌습니다. 기존 권한 요청 방식 새로운 권한 요청 방식 새로운 권한 요청 방식은 RAD 스튜디오 10.3 부터 적용되며, 기존에 작성했던 안드로이드 프로젝트는 권한 요청하는 로직을 추가하도록 업데이트 해야 합니다... 더보기
블루투스 바코드 스캐너(BI-07) 안드로이드 라이브러리를 델파이에서 연동하는 방법 S모전자에서 의뢰한 휴대용 바코드 스캐너와 연동한 내용 공유합니다.휴대용 바코드 스캐너는 JAR 형태의 안드로이드 라이브러리를 제공합니다.이 과정을 통해 델파이와 안드로이드 라이브러리 연동하는 내용을 소개합니다. 휴대용 바코드 스캐너 연동 위 영상의 휴대용 바코더 스캐너는 클래식 블루투스 기반으로 연결을 제공합니다.해당 안드로이드 앱은 델파이로 제작했으며, JAR 파일을 이용해 스캐너와 연동합니다. JAR 파일 연동과정은 아래와 같습니다.1, 준비(라이브러리 준비 및 분석)2, 델파이용 안드로이드 라이브러리 브릿지 파일 생성3, 델파이 프로젝트에 안드로이드 라이브러리 추가4, 브릿지 파일을 이용해 안드로이드 라이브러리 연동 기타 안드로이드 라이브러리 연동 시 참고사항델파이 샘플 프로젝트 준비(라이브러리 .. 더보기
[XE7] 안드로이드 블루투스 활성화 조회와 설정하기 일본인 개발자인 山本隆(야마모토 타카시)의 글을 참고해 안드로이드에서 블루투스 활성여부 조회와 설정하는 내용을 공유합니다.블루투스 활성여부 조회uses Androidapi.JNI.Bluetooth; procedure TForm2.Button1Click(Sender: TObject); var Adapter: JBluetoothAdapter; begin Adapter := TJBluetoothAdapter.JavaClass.getDefaultAdapter; if Adapter.isEnabled then ShowMessage('Bluetooth가 활성화 되어있습니다.') else ShowMessage('Bluetooth가 활성화 되지 않았습니다.'); end;블루투스 활성화 설정uses Androidapi.J.. 더보기
[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 함수를 수정해 해결할 수 있습니다.(변경된 소스 적용은 프로젝트에 수정한 파일을 추가해서 간단히 해결할 수 있네요.) 더보기
[앱 소개] 파생 플러스(KOSPI선물 / 해외선물 모의투자 HTS 시스템) - Delphi XE7/안드로이드 (2015년 첫번째 글입니다. 제가 부끄러움이 많아 블로그에서 정보만 전달했는데요. 은근슬쩍 신년인사드립니다. 블로그에 오시는 분들과 델파이, C++빌더, 앱메소드 개발자 분들 모두모두 새해 복 많이 받으세요.^^) 이번 글에서는 피터주혁(데브기어 테크게시판 별칭)님이 개발하신 파생플러스(KOSPI선물 / 해외선물 모의투자 HTS 시스템) 앱을 소개합니다. 이 앱은 델파이 XE7으로 개발되어 안드로이드 마켓에 공개되었습니다. 아래 링크 방문하셔서 다들 다운로드 한번 받아주세요.(이런말은 본인이하기 어려우니 제가 대신 해드립니다.^^)https://play.google.com/store/apps/details?id=com.plus.FuturePlus HTS 시스템의 경우 이미 PC 기반에서 델파이의 강세를.. 더보기
커스텀 폰트 배포와 사용하기(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/ 더보기
안드로이드 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 +.. 더보기
안드로이드 SMS 목록 얻어오기(샘플) 러시아의 델파이 개발자가 안드로이드의 SMS 목록을 얻어오는 샘플을 공개했습니다.해당 블로그를 보니 안드로이드 관련된 아주 다양한 정보들이 있네요. 한번 살펴보시면 많은 도움이 되실 듯 합니다.단, 러시아어로 되어 있어 구글 자동번역기를 이용하면 될 것 같습니다. 참고원글 : http://delphifmandroid.blogspot.kr/2014/06/sms.html구글 자동번역 : https://translate.google.com/translate?sl=auto&tl=ko&js=y&prev=_t&hl=ko&ie=UTF-8&u=http%3A%2F%2Fdelphifmandroid.blogspot.kr%2F2014%2F06%2Fsms.html&edit-text=http://www.fmxexpress.com.. 더보기
안드로이드에서 ShowModal 사용하기 안드로이드에서는 모달폼 개념이 없어 기존에 사용하던 VCL 코드를 그대로 사용할 경우예상과는 다르게 모달폼이 동작하지 않습니다. 안드로이드에서는 다르게 모달폼을 구현해야 하는데 그 내용을 안내해 드립니다.주요한 핵심은ShowModal과 익명 메소드(Anonymous Mehtod)를 이용할 것모달폼의 해제(Free)는 반드시 폼의 FormClose 이벤트에서 CloseAction을 사용해서 해제할 것다른 내용은 아래의 링크를 통해서 자세히 알아보세요. http://www.malcolmgroves.com/blog/?p=1585&utm_source=rss&utm_medium=rss&utm_campaign=showmodal-on-android-2 더보기
파이어몽키 안드로이드 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.. 더보기
C++빌더 안드로이드 지원 월페이퍼 C++ 빌더에서 안드로이드 지원을 축하하는 월페이퍼입니다. 이건 XE5에서 델파이가 안드로이드 지원을 기념한 월페이퍼참고링크http://delphi.org/2014/04/cbuilder-xe6-for-android-wallpaper/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+DelphiDotOrg+%28Delphi.org%29 더보기
모바일개발 심화 안녕하세요. 험프리 김현수입니다. 이글에는 안드로이드와 iOS 개발 시 참고 할만한 글들을 모으려 합니다.따라가기 형태가 아니며, 내용을 훑어 보시고 필요한 정보는 방문해서 지식을 얻으셨으면 좋겠습니다. (계속 작성 중입니다. 좋은 정보 있으면 댓글로 알려주세요.) 공통기능▶ 데이터 연동Baas(Backend as a Service)와 RAD Studio(GCM, APN, 푸시알림 가능)모바일에서 RESTful 연동방법(Rest Client 소개)▶ UI 구성좌측에서 슬라이드로 나오는 메뉴 만들기파이어몽키에서 끌어서 새로고침 구현ListView의 Header를 첫글자로 정렬하는 방법▶ 기능구현 참고안드로이드와 iOS 연락처 목록을 얻어오는 방법Mobile app lifecycle events handli.. 더보기