さまざまな機能を実装できるiPhone・Androidアプリ開発で使えるSDKライブラリ
iPhone・Android開発では、複雑な機能を簡単に実装できるように「SDK(Software Developer Kit)」が数多く公開されています。
プログラマにとっては、プログラミングの負担を軽減してくれるありがたい存在ですが、どこでどのようなSDKが提供されているのかお話していきましょう。
ただし、SDKを使ったからと言って、プログラミングスキルが不要となるわけではないので、しっかりプログラム言語についても勉強してくださいね。
豊富な機能でアプリ開発を高速化できる「SDK」
これから、さまざまなスマートフォンアプリ開発について書いていきたいと思いますが、SDKの提供バージョンによっては、最新の開発環境やOSに対応していないものもありますので、
詳細はSDK提供元のドキュメントを確認するようにしましょう。
実際にSDKを実装しながら学ぶのも良いと思います。
Yahoo! iOSマップSDK
地下街の地図表示や、ルート案内をAR表示したり、雨雲レーダー情報を表示するなど、多彩な地図表示ができるのが「Yahoo! iOSマップSDK」です。
ただし、このSDKを利用したアプリは基本的に「有償で販売できない」という制約があるため、課金型アプリは作りにくい側面もあります。
また、「指定URL」のリンク挿入も条件となっていますので、利用する際には注意をしましょう。
skyway iOS/Android SDK
WebRTCを使用して、「P2P(ピア・ツー・ピア」型のネットワーク接続を行えるのが、「skyway iOS/Android SDK」です。
データ・オーディオ・ビデオ通信を行うことができ、複雑な通信機能を制御するプログラムを書くことなく、通信アプリを開発することができます。
また、Javascriptでも利用できる「PeerJS」も用意されているため、WEBアプリケーションにP2P通信機能を組み込むことができるようになっています。
プログラミング量も最小限に抑えられ、サンプルコードも用意されているため、WebRTC技術を利用したアプリ開発では、現在、有力な候補となっています。
Google Admob SDK
Google社が提供しているのが広告掲載用SDKの「Google Admob SDK」です。
Android・iOS・Windows Phone向けアプリで広告を掲載することができ、サンプルコードも用意されていて比較的導入しやすい広告型SDKとなっています。
iOS用のサンプルもSwiftとObjective-Cの両方があって、プログラマさんのことを考えてくれているSDKです。
近年のアプリは、アプリ自体は無償化してダウンロード数の拡大を図り、広告で収益を上げる手法を取るアプリが多いので、利用者は拡大傾向にあります。
Google Maps SDK for iOS
ストリートビューなどGoogle Map独自の機能を使うことができるのが、「Google Maps SDK for iOS」です。
iOSが独自のマップを用意したこともあり、従来GoogleMapに親しんできたユーザーには使いやすい機能が豊富に用意されていて、MAPタイプのSDKでは、使用アプリも非常に多いものとなっています。
標準マップ・地形図・ハイブリッドマップなどさまざまなマップ表示を行うことができるので、ナビゲーションアプリやゲームアプリ・SNSなど多用途に使うことができるでしょう。
カメラの位置を変えることで、上方から俯瞰したマップを表示することもできます。
iOSライブラリ管理ツール「CocoaPods」
SwiftとObjective-Cのライブラリの依存関係やインストール状況を管理できるのが、「CocoaPods」です。
Rubyを先にインストールしておき、Mac OSで、
sudo gem install cocoapods
を実行すると「CocoaPods」をインストールすることができます。
煩雑になり複雑化しやすい外部ライブラリの管理ツールを使うことは、開発効率とメンテナンス性を行うためには欠かせないものなっていますので、まだライブラリ管理を自力で行っている方にはうってつけのツールです。
iOSライブラリ「NVActivityIndicatorView」
いわゆる「待ち状態」のアイコンを豊富に用意しているのが「NVActivityIndicatorView」です。
「MITライセンス」なので、誰でも自由に使えてかなり使いどころがありそうなライブラリです。
豊富にアイコンが用意されているのが嬉しいところですね♪
近年人気が出ている「Swift」コードで書かれているので、Swiftエンジニアには使い勝手も良いんじゃないでしょうか。
→「iOSライブラリ「NVActivityIndicatorView」」
iOSライブラリ「LiquidFloatingActionButton」
ユニークなボタン表示ができるiOSアプリ用ライブラリが「LiquidFloatingActionButton」です。
「Floating Action Button Component」という位置付け、浮いているボタンを制御する機能が実装されていて、ボタンの動きが面白いライブラリです。
CocoaPodsを使ってインストールができるので、インストールもすぐに行えて使いやすいライブラリだと思います。
→iOSライブラリ「LiquidFloatingActionButton」
iOSライブラリ「Swift-Prompts」
オシャレなアラートボックスを表示できるのが、「Swift-Prompts」です。
デザインは近年のiOSが採用しているフラットデザインを採用していて、iOSの表示画面の調和を考えたデザイン設計となっています。
「通常のアラーとボックスでは個性が出ない!」
と、アプリ開発のマンネリ化を打破するという意味でも導入すると、現在のアプリにデザイン的な変化をもたらしてくれるiOSデザインライブラリです。
Androidライブラリ「ExtendedCalendarView」
カレンダーを簡単に表示できるAndroidライブラリが「ExtendedCalendarView」です。
一からカレンダーを表示するコンポーネントを開発することを考えると、こういうライブラリは開発時間を大幅に短縮してくれます。
シンプルなデザインで見やすくて使いやすそうなライブラリですね。
日付を入力する「イベントアプリ」や「スケジュール管理アプリ」などで用途がありそうなカレンダー表示機能です。
Androidライブラリ「ViewAnimator」
ボタンなどの要素にユニークな動きを付けることができるのが「ViewAnimator」です。
標準で使えるウィジェットの動的な表現はシンプルすぎて味気ないと感じてる方には、UIをリッチにするための大きな選択肢になるのではないでしょうか。
動き的にはJavascriptのJQUERY UIに近いアニメーションをしてくれますので、ユーザーの目を惹くインターフェースにできるのではないかと思います。
GiuHubにサンプルがありますので、一度見てみるのも良いのではないでしょうか。