iOS 用 Hello World アプリケーションの作成

学習の目的

この単元を完了すると、次のことができるようになります。
  • サービス SDK フレームワークを iOS プロジェクトに埋め込む。
  • サービス SDK の基本機能を iOS プロジェクトに結び付ける。
  • サービス SDK リソースを入手する場所について説明する。

iOS の使用開始

よろしいでしょうか。組み込みサービス SDK が最適であることを確認できましたね。この SDK によって、素晴らしい Service Cloud の機能をアプリケーションに結び付けることができることにわくわくしていますね。それで、SDK で使用するように組織を準備しました。あとほんの少しの作業で、SDK を iPhone と iPad 向けの既存の iOS アプリケーション内で動作するようにできますが、この単元ではそのやり方を説明します。

メモ

メモ

iOS 開発に慣れている方が対象です。Swift の使用方法や Xcode IDE の回避方法については説明しません。これらに精通していなくても、この単元をざっと読んで、この SDK を使用するためには何が必要となるかを把握することができます。

Xcode での基本的なプロジェクトの作成

簡単なプロジェクトを構築する準備が整いました。Xcode を起動して、[Single View Application] (単一ビューアプリケーション) を作成することから始めましょう。Xcode バージョン 9 以降を使用してください。

Single View Application (単一ビューアプリケーション)

この例では、わかりやすくするために言語は [Swift] を選択します。

Swift 言語

次に、サービス SDK ダウンロードページから組み込みサービス SDK をダウンロードします。

SDK を展開し、組み込まれているフレームワークファイルをすべてプロジェクトに埋め込みます。

フレームワークの埋め込み

CocoaPods を使用して SDK をインストールする場合、または使用事例にどのフレームワークが必要であるかを正確に知りたい場合は、SDK のインストール指示を参照してください (「リソース」を参照)。

あと少しの作業で美しいボタンを追加できるようになります。キャッシュされた知識ベースの記事を配信するために、localhost に App Transport Security (ATS) の例外を作成する必要があります。プロジェクトの Info.plist ファイルを開き、次の内容を追加します。

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
  <dict>
    <key>localhost</key>
    <dict>
      <key>NSExceptionAllowsInsecureHTTPLoads</key>
      <true/>
    </dict>
  </dict>
</dict>

ヘルプボタンの追加

メインビューコントローラにヘルプボタンを追加しましょう。

ボタンをビューコントローラにドラッグします。ボタンの名前を、「Service SDK Rocks!」のようなわかりやすいものに変更します。

Snap-ins Rock!

ボタンの位置をその他のビューと合わせて、すべてのサポート対象デバイスで正しく配置されるようにします。

ビューコントローラのボタンにアクションメソッドを作成し、「buttonTapped」という名前を付けます。

ボタンアクションステップ 1

ボタンアクションステップ 2

ボタンアクションステップ 3

ボタンの結び付け

よろしいでしょうか。では、コーディングに取り掛かりましょう。ナレッジ機能に結び付けますが、その他のどのような機能でも、お望みであれば試すことができます。

まず、AppDelegate クラスを開き、必要なフレームワークをインポートします。

import ServiceCore
import ServiceKnowledge

SDK を application(_:didFinishLaunchingWithOptions:) メソッドで設定します。

// Create configuration object with init params
let config = SCSServiceConfiguration(
               community: URL(string: "https://mysite.example.com")!,
               dataCategoryGroup: "Regions",
               rootDataCategory: "All")
// Pass configuration to shared instance
ServiceCloud.shared().serviceConfiguration = config

プレースホルダ値は、Experience Cloud サイト URL、データカテゴリグループ、ルートデータカテゴリの実際の値で置き換えてください。置き換えないと、アプリケーションはナレッジのコンテンツを検索できずにエラーとなります。詳しいガイダンスについては、「リソース」セクションの「Cloud Setup for Knowledge (ナレッジ用のクラウドの設定)」を参照してください。

ここでは ViewController クラスに進み、そのボタンに、ただ美しく見える以上のことをさせましょう。

このファイルのフレームワークもインポートする必要があります。

import ServiceCore
import ServiceKnowledge

次に、setInterfaceVisible メソッドを使用して、前に作成したボタンハンドラから直接、ナレッジインターフェースを起動しましょう。

@IBAction func buttonTapped(_ sender: AnyObject) {
  ServiceCloud.shared().knowledge.setInterfaceVisible(true,
                                  animated: true,
                                  completion: nil)
}

これで終わりです。アプリケーションを起動して新しいボタンをタップし、ナレッジの素晴らしさに浸ってください。

iOS のナレッジ

ここから、ほかにもあらゆる種類のことを行うことができます。カテゴリや記事にヒーローの画像を追加することもできます。インターフェース全体で使用されている UI テキスト、フォント、画像、色のブランド設定をやり直すこともできます。ケース管理やチャットの操作も、ナレッジの操作と同じくらい簡単ですのでご安心ください。

次のステップ

何とおっしゃいました? さらに詳細な情報が必要ですか?

まずは『iOS 用組み込みサービス SDK 開発者ガイド』を参照します。この開発者ガイドには、さらに多くのチュートリアルと例が含まれており、さらに多くのトピックが扱われています。ナレッジやケース管理、チャットという、すべての主要機能について説明されています。API の詳細については、iOS のリファレンスドキュメントも参考になります。「リソース」セクションには、これらの素晴らしいツールのリンクがあり、その他のツールのリンクもあります。

次の単元では、Android 用に同じアプリケーションを作成する方法について説明します。

無料で学習を続けましょう!
続けるにはアカウントにサインアップしてください。
サインアップすると次のような機能が利用できるようになります。
  • 各自のキャリア目標に合わせてパーソナライズされたおすすめが表示される
  • ハンズオン Challenge やテストでスキルを練習できる
  • 進捗状況を追跡して上司と共有できる
  • メンターやキャリアチャンスと繋がることができる