Short.io のデータをモバイル開発のUnifinity で利用する方法

杉本和也
杉本和也
リードエンジニア
クロスプラットフォームモバイルアプリ開発ができるUnifinity から Short.io のデータに接続する方法



Unifinity は、iOS / Android / Windows のマルチOS 向けのモバイルアプリ開発が可能なプラットフォームです。Unifinity Studio という専用のツールで、UIをベースにアプリ画面をデザインしたり、DB・APIなどと連動した処理・ロジックを作成することができます。Unifinity では、REST API への接続ができるため、CData の製品を組み合わせることで対応データソースを増やすことができます。この記事では CData API Server と ADO.NET Provider for Short.io を使って、Unifinity でShort.io にデータ連携するモバイルアプリを開発する方法を説明します。
Unifinity モバイルアプリからShort.io にデータ連携。

API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなShort.io OData サービスを作成していきましょう。

Short.io への接続

Unifinity からShort.io のデータを操作するには、まずShort.io への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Short.io」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、Short.io への接続設定を行っていきましょう! 接続設定
  5. API キー認証の設定

    Short.io は API キー認証を使用します。API キーを取得するには、以下のステップで進めます:

    1. Short.io アカウントにログインします
    2. Settings > Integrations & API > API に移動します
    3. Create API Key をクリックして API キーをコピーします

    API キーを取得したら、接続を確立できます:

    • AuthScheme:APIKey に設定します。
    • APIKey:Settings > Integrations & API > API から取得した Short.io の API キーに設定します。

    接続文字列の例:

    Profile=C:\profiles\ShortIo.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_api_key';
    

    利用可能なテーブル

    Short.io プロファイルでは、以下のテーブルにアクセスできます:

    • Domains - 認証済みアカウントに関連付けられた Short.io ドメイン
    • Links - ドメインの短縮リンク
    • LinkExpand - ドメインとパスから短縮リンクを展開
    • LinksByOriginalUrl - 指定した元の宛先 URL に一致する複数の短縮リンクを取得
    • Folders - 特定のドメイン内のリンクフォルダー
    • LinkPermissions - ドメイン内の特定のリンクの権限レコード
    • CountryTargeting - 特定の短縮リンクの国別リダイレクトターゲティングルール
    • RegionTargeting - 特定の短縮リンクの地域別リダイレクトターゲティングルール
    • Regions - 指定した国コードに対する利用可能な地域/州の一覧
    • DomainStatistics - Short.io ドメインのクリック数とトラフィックの集計統計
    • LinkStatistics - 特定の Short.io リンクのクリック数とトラフィックの集計統計
  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

API キー認証の設定

Short.io は API キー認証を使用します。API キーを取得するには、以下のステップで進めます:

  1. Short.io アカウントにログインします
  2. Settings > Integrations & API > API に移動します
  3. Create API Key をクリックして API キーをコピーします

API キーを取得したら、接続を確立できます:

  • AuthScheme:APIKey に設定します。
  • APIKey:Settings > Integrations & API > API から取得した Short.io の API キーに設定します。

接続文字列の例:

Profile=C:\profiles\ShortIo.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_api_key';

利用可能なテーブル

Short.io プロファイルでは、以下のテーブルにアクセスできます:

  • Domains - 認証済みアカウントに関連付けられた Short.io ドメイン
  • Links - ドメインの短縮リンク
  • LinkExpand - ドメインとパスから短縮リンクを展開
  • LinksByOriginalUrl - 指定した元の宛先 URL に一致する複数の短縮リンクを取得
  • Folders - 特定のドメイン内のリンクフォルダー
  • LinkPermissions - ドメイン内の特定のリンクの権限レコード
  • CountryTargeting - 特定の短縮リンクの国別リダイレクトターゲティングルール
  • RegionTargeting - 特定の短縮リンクの地域別リダイレクトターゲティングルール
  • Regions - 指定した国コードに対する利用可能な地域/州の一覧
  • DomainStatistics - Short.io ドメインのクリック数とトラフィックの集計統計
  • LinkStatistics - 特定の Short.io リンクのクリック数とトラフィックの集計統計

API Server のユーザー設定

次に、API Server 経由でShort.io にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

Short.io 用のAPI エンドポイントの作成

ユーザーを作成したら、Short.io のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OData のエンドポイントを取得

以上でShort.io への接続を設定してユーザーを作成し、API Server でShort.io データのAPI を追加しました。これで、OData 形式のShort.io データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

オンプレミスDB やファイルからのAPI Server 使用(オプション)

オンプレミスRDB やExcel/CSV などのファイルのデータを使用する場合には、API Server のCloug Gateway / SSH ポートフォワーディングが便利です。是非、Cloud Gatway の設定方法 記事を参考にしてください。

Unifinity でShort.io のREST サービスに接続

Unifinity プロジェクトの作成

Unifinity から APIServer への接続設定をしていきます。

  1. Unifinity Studioを立ち上げてます。
  2. 新しくプロジェクトを作成します。今回は「inquiriesProject」としました。
  3. 次に画面を作る前に、データを格納するためのDBを作ってしまいます。 DBタブを選んで、「+」ボタンでDBを追加します。名前は「inquiries」です。
  4. Unifinity
  5. 画面を作成します。一覧画面に表示している「表」は先程作成したDBの「inquiries」と紐付けています。
  6. Unifinity
  7. 画面本体のオープン時の処理として後ほど解説するデータ取得ロジックを指定しています。これによって、表にデータが表示されるようになります。
  8. Unifinity
  9. アプリの要となるロジック部分を構成します。
  10. 一覧画面を表示するための「データ取得ロジック」を作成します。登録・更新のロジック作成も可能です。
  11. データ取得ロジックは以下のような処理で構成されています。Cdata API Serverにリクエストを送り、そのデータをデータベースに書き込むことで一覧表示を実現しています。
  12. Unifinity
  13. API Serverへのリクエストには、ヘッダーで認証情報を指定する必要があります。そのため、ディクショナリー作成コンポーネントを使って、ContentTypeとともに、「x-cdata-authtoken」というプロパティで先程API Serverのユーザー作成画面で構成したToken情報を設定するようにします。
  14. Unifinity
  15. HTTPリクエストには「ネットワーク/GET2」のコンポーネントを使用し、URIにAPI Serverのinquiriesリソースエンドポイント「例:http://localhost:8387/api.rsc/sakila_inquiries」を指定し、ヘッダーオプションに先程作成したディクショナリを指定します。
  16. Unifinity
  17. あとはJSON構造をディクショナリに格納し、配列構造を持っている「value」の部分を読み込んだ上で、データベースに書き込みます。
  18. Unifinity Unifinity
  19. データベースに書き込む際には、予めデータクリアーをするように指定しておきます。
  20. Unifinity

    このように Short.io 内のデータを簡単にUnifinity で作成するモバイルアプリで使用することができるようになります。

    CData API Server の無償版およびトライアル

    CData API Server は、無償版および30日の無償トライアルがあります。是非、API Server ページ から製品をダウンロードしてお試しください。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server