OutSystemsモバイル(5) 連絡先登録

ForgeにあるOutSystemsのスマートフォンアプリ対応機能OutSystems Nowを利用して、スマートフォンのネイティブ機能を試してみます。

今回は、連絡先登録です。スマートフォンユーザの連絡先に登録します。登録できるだけで閲覧や検索のような機能はないようです。これはカレンダー登録と同じ。

Nowについてはきちんとした仕様が見つからないので、試してみた結果のみで書いている点に注意してください。

シリーズ一覧:

機能

OutSystems Now内で、AddCalendarEventというWeb Blockとして実装されています。

OutSystems Now App(スマートフォンアプリ。使っているスマートフォンのアプリストアから無料でダウンロードできます)で開いているときのみ、以下の動作をします。

  • パラメータで指定したボタンがクリックされたとき、スマートフォンの連絡先に、別のパラメータで指定した連絡先情報を登録する
  • なお、パラメータとして渡す連絡先情報の情報は画面表示時に決まってしまう(入力部品等で変更しても反映されない)

連絡先情報に渡せる情報は以下4つ。

全て必須です。

  • 名(Text型)
  • 姓(Text型)
  • 電話番号(Phone Number型)
  • EMail(EMail型)

利用手順

OutSystems Nowを開発環境にインストールしていなければ、インストール。

開発するモジュールを開いて参照を追加します。Manage Dependenciesアイコンをクリック。
WS000001

OutSystems NowのScreen Flows/DeviceFeatures/AddContactにチェックを入れてOKをクリック。

AddContentを参照

これで開発するモジュールに連絡先登録機能を組み込めるようになります。

テスト用にWeb Screenを1つ作ります。

ローカル変数として、連絡先情報に渡せる4つの情報を用意しておきます。

  • 名:FirstName
  • 姓:LastName
  • 電話番号:Phone(Phone Number型)
  • EMail:EMail(EMail型)

あくまでテスト向けなので、Preparation Screen Actionを用意して適当な値を設定しておきます(Assignを使用)。

ここでは自分の連絡先を設定しておきました。

下の画像が作ったスクリーンです。

値は全てPreparation内でやってしまうので配置するのはButton1個(Nameを付け、MethodをAjax Submitに変更)と、

OutSystems Now/DeviceFeatures/AddCContact(プロパティは画像右下を参照)1個をドラッグ&ドロップして配置。

Screen

動作確認

スマートフォンでOutSystems Nowを開いて、テストアプリケーションにつなぎましょう。

ボタンを押して登録が成功したところ。

連絡先追加成功したところ

追加した連絡先きちんと反映されました。

追加された連絡先

OutSystems Nowがサポートしていない属性も、たくさんあるみたいですね。

Cordovaのページを見ると追加できそうな属性がたくさんあります。必要な人はOutSystems NowをCloneして改修して対応かな。

気になるところ

これも登録しかできません。

よく見ると成功、失敗時のメッセージが英語固定で埋め込まれています。

サンプル実装なんだろうか……。

// iOS & Android

function OutSystemsNative_OnCreateContactSuccess() {
    OutSystemsNow_ShowSuccessFeedback('Contact created')
}

function OutSystemsNative_OnCreateContactFail() {   
    OutSystemsNow_ShowErrorFeedback('Contact not created. Please check your application permissions, in your device settings.')  
}

また、カレンダー登録と同じように画面表示時点のパラメータがボタンクリック時にそのまま登録されてしまいます。

つまり、入力フォームを置いて、ユーザが自分好みに名前を変えてから登録しても、初期表示された名前で登録される。

改修で対応しなければいけないです。

関連情報

公式チュートリアル

Cordovaページ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする