14:00デバイス搭載のセンサーなどの機能を利用したアプリケーションを開発する場合、単一コードでiOSとAndroidの双方に対応するのは困難です。Delphiのフレームワークを用いれば、コンポーネントがプラットフォームの差異を吸収してくれるので、単一コード開発が実現できます。この記事では、DelphiでGPSや加速度センサーを利用するアプリケーションを、単一コードで開発する方法を紹介します。水平器の外観を作る加速度を取得するアプリの完成Page5レイアウトについてタブ機能を簡単に実装するTTabControlマルチデバイスできれいに表示させるための配慮それでもデバイスごとにカスタマイズしたいときのFireUIおわりにはじめにスマホアプリならではの便利で革新的な機能を実装しようとすると、センサーなどのデバイス機能を利用したくなります。iOSとAndroidの双方に対応したいと、マルチデバイス対応の開発環境を利用していても、この辺が機能限界の分岐点となり、どうしてもプラットフォーム固有のネイティブツールへとなびき、単一コードによる開発効率化を諦める結果になっているようです。BerlinDelphi(そしてC++Builder)は、デバイス機能をネイティブでサポートしながらも、コンポーネントによってデバイス固有の部分をカプセル化し、共通の操作で各デバイス向けの機能を呼び出せるようになっています。そこで今回、さまざまなデバイス機能をてんこ盛りしたアプリを作成し、どの程度マルチデバイス対応がイケてるのかを検証してみようと思います。4でも詳しく取り上げています。今回作成するアプリには、次のような機能を盛り込んでみました。加速度センサーで取得できる3軸(X、Y、Z)の値のうち、X軸とY軸の値を使って水平器を実現するいずれも単体ではあまり実用的ではありませんが、業務アプリでもゲームでも、よく利用したくなる機能です。アプリには、次のようにタブで切り替えられる複数ページがあります。デバイス機能をてんこ盛りしたアプリここで紹介するアプリのソースコードは、https://github.com/kazinoue/2016_Delphi_bootcamp_day4に掲載しています。印刷用を表示ブックマークツイート著者プロフィールEDN編集部(イーディーエヌ編集部)エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。圧縮・解凍UNIX基本講座@CodeZine『CodeZine(コードジン)』の公式アカウントです。【NEW】デブスト2019デブサミ2019福岡・関西デブサミ2019夏デブスト関西デブサミ2019×ログインEメールパスワード※旧SEメンバーシップ会員の方は、同じ登録情報(Eメール&パスワード)でログインいただけます。イラストの無断転載を禁じます。記載されているロゴ、システム名、製品名は各社及び商標権者の登録商標あるいは商標です。