Allied ArchitectsAllied ArchitectsEngineer Blog

PhoneGapで電話帳にアクセスする方法

2012/05/23 JavaScript

こんにちは、システム本部の長野です。
主にモニプラ for Facebook(モニプラFB)の開発を担当しています。
少し前にアライド全体のブログでエビチカについてを書かせてもらいました。ぜひ御覧ください。

先日PhoneGapを触ってみたので、
備忘録がてらPhoneGapで電話帳にアクセスする方法を紹介します。
開発環境は MacOSX10.7.3, Xcode4.3.2, iOS5.1.1, PhoneGap1.6.0です。

いきなりですが、ソース全文です。解説は後述します。

以下解説です。

これはphoneGapの読み込みが完了したときに実行されるもので、
PhoneGapアプリを開発するときにはとりあえず入れておけば問題ないです。

http://docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html#deviceready

電話帳からデータを取得するにはcontacts.findという関数を使います。
その際に取得したいフィールドを指定する必要があり、
上記ではname(名前)とemails(メールアドレス)を指定しています。

取得できるフィールドの一覧はこちらに詳しく書いています。
デバイスによって取得できないフィールドもあるので注意が必要です。

また、options.filterに値を入れるとフィルタをかける事ができます。
フィルタは指定したフィールドから部分一致で検索されます。

電話帳から複数のレコードを取得したいときは

を指定する必要があります。これを指定しないと1レコードしかとれません。
(これはデフォルトでfalseなのですが、trueでもいいと思います。)

取得に成功するとレコードがセットされた配列が返ってきます。
今回は名前とメールアドレスだけを指定したので、nameプロパティとemailsプロパティが取得できます。
このプロパティ周りもデバイス依存が激しい部分なので、このあたりのマニュアルをよく読んでおくといいようです。

PhoneGapは普段書き慣れているJavaScriptでネイティブな部分に簡単にアクセスできるのでかなりとっつきやすかったです。また他にカメラへのアクセスなどもできるようなのでどこかで紹介したいと思います。
そしてアライドではスマフォアプリの開発に自信がある方を募集しています。
興味のある方はこちらからお願いします!

nagano
  • nagano
  • Webエンジニア
  • サービス開発や社内インフラ等を担当しています。 このブログではJavaScript周りのネタを中心に書いていきたいです。

RELATION ENTRY

Unityを触ってみる3

Unityを触ってみる3

2017/10/11 未分類

はじめに こんにちは。プロダクト開発部兼UGC事業部の長野です。 気づけば3年半振りの投稿です。 本業ではphpやJavaScriptを触っていますが、このブログでは引き続きunityネタで行きます。 今回はunityに今流行のDeepLearningを組み合わせたlisというものを使ってみます...

続きを読む

Unity 4.3を触ってみる2

Unity 4.3を触ってみる2

2014/05/8 JavaScript

こんにちは。システム部の長野です。 今回も前回に引き続きUnityネタで行きます。 今流行の鳥を飛ばして障害物を避けていく某人気ゲームのようなものを作ってみました。 (既に出尽くした感満載ですが、、) サンプル ※閲覧するにはUnity Web Playerのインストー...

続きを読む

naganoの記事一覧へ

ページTOPへ