タイトル ニュースは、パッチ メモやゲームがホストする大きなイベントについて、プレイヤーに配信する仕組みです。 次のような、いくつかの基本的な要素があります。
- 日付
- Status
- タイトル
- 本文
- Languages
注意
本文の要素は、生テキストまたは JSON を含む文字列です。
要件
このクイックスタートは、他のトピック内にある情報に基づいています。 質問がある場合は、次のトピックのリンクをご参照ください。
- PlayFab ゲーム マネージャーを理解しておく必要があります。
注意
ローカライズされたタイトル ニュースを続行するには、タイトルの既定の言語がすでに設定されている必要があります。
- タイトル ニュースがローカライズされるようになりました。 タイトルでの既定の言語で動作するための詳細と、プレイヤーの優先言語で動作するための詳細については、「既定の言語の設定」チュートリアルでご確認ください。 ローカライズされたタイトル ニュースを続行するには、タイトルの既定の言語がそれに合わせて設定されている必要がありますのでご注意ください。
PlayFab では、ゲーム デベロッパーに代わってローカライズされた文字列の保存をサポートしています。タイトル ニュースのエントリ用の言語でタイトルと本文を関連付けています。
希望する言語の正しい文字列でプレイヤーを提供するために必要なロジックを追加しました。 クライアントがタイトル ニュースを検索する場合、プレイヤーの優先言語によって、異なるバージョンのタイトル ニュースを受信します。 複数の翻訳バージョンを 1 つのタイトル ニュース エントリに追加できます。
タイトル ニュース エントリの作成
タイトル ニュース エントリを作成するには、次の 2 つの方法があります。
- ゲーム マネージャー経由です。
- 管理 API のメソッド AddNews を使用します。
ゲーム マネージャーでタイトル ニュースを作成する
ゲーム マネージャー でタイトル ニュース エントリを作成するには、
次の図に示すように、タイトル - >[コンテンツ] - >[タイトル ニュース] - > [新しいタイトル ニュース] に移動します。
このチュートリアルでは、タイトルの既定の言語は英語であると想定しています。 タイトル ニュースを保存する前に、既定の言語の文字列を追加する必要があるということです。
言語を追加するには、[言語の追加] をクリックし、追加する言語を選択して、ローカライズされた文字列を入力するだけです。 [タイトル ニュースの保存] ボタンを選択すると、エントリが作成されます。
タイムスタンプは、タイトルニュースの横に表示される時間です。 タイムスタンプは、[タイトル ニュースの保存] ボタンを選択したときに、自動的にシステム日に設定されますが、手動で設定すること も できます。 タイトル ニュース ページを保存すると、タイトル ニュース エントリの一覧があるページにリダイレクトされます。
PlayFab 管理 API を使用して、タイトル ニュースを作成する
AddNews メソッドを呼出し、タイトル ニュースを作成できます。 この管理 API を使用すると、カスタマイズされたタイムスタンプを指定できます。 この方法で追加されたニュースは、直ちに公開されます。
AddNews
メソッドから返されるニュース ID を使用して、AddLocalizedNews を呼び出して作成したばかりのアイテムに、ローカライズしたコンテンツを追加できます。
次のコードの例は、これを示しています。
void CreateNews() {
PlayFabAdminAPI.AddNews(new AddNewsRequest {
Timestamp = new DateTime(2014, 1, 8, 12, 0, 0), // Any date - This one is the founding of PlayFab
Title = "My Second News",
Body = "This is my second news post."
},
result => Debug.Log("News post added!"),
error => Debug.LogError(error.GenerateErrorReport()));
}
void CreateNews() {
PlayFabAdminAPI.AddLocalizedNewsRequest(new AddLocalizedNewsRequest{
NewsId = "74623b12-6c80-ee4b-7c3b-58e638aa62bd",
Language = "de"
Title = " Meine zweite Nachricht",
Body = " Dies ist meine zweite Nachricht."
},
result => Debug.Log("Localized news post added!"),
error => Debug.LogError(error.GenerateErrorReport()));
}
タイトル ニュースを読み取る
GetTitleNews
メソッドを使用して、タイトル ニュースを非常に簡単に読み取れます。 公開されているすべてのタイトル ニュース エントリがメソッドにより返されます。アーカイブおよび未公開のエントリは返されません。
- クライアント API の GetTitleNews を呼び出すと、タイトルのニュース項目が対象言語でローカライズされたコンテンツとして追加されている場合は、プレイヤーの優先言語でニュース エントリを返します。追加されていない場合は、タイトルの既定の言語のエントリが返されます。
- サーバー API の GetTitleNews を呼び出すと、タイトルの既定の言語でニュース エントリが返されます。
// Using the Client API method
void ReadTitleNews() {
PlayFabClientAPI.GetTitleNews(new GetTitleNewsRequest(), result => {
Debug.Log("Got latest news!");
// Process news using result.News
}, error => Debug.LogError(error.GenerateErrorReport()));
}
// Using the Server API method
void ReadTitleNews() {
PlayFabServerAPI.GetTitleNews(new GetTitleNewsRequest(), result => {
Debug.Log("Got latest news!");
// Process news using result.News
}, error => Debug.LogError(error.GenerateErrorReport()));
}
既存のタイトル ニュース エントリを更新する
タイトル ニュース エントリのコンテンツのみをゲーム マネージャーで変更できます。
ゲーム マネージャーで変更するエントリを検索し、選択するには、
- 左側のメニューに移動し、[コンテンツ] を選択します。
- [タイトル ニュース] タブに移動します。
- [既存エントリ] を選択します。
更新して、保存し、必要に応じてローカライズされたバージョンを追加するには、
- エントリの [タイトル]、[ステータス]、または [データ] を更新します。
- [タイトル ニュースの保存] ボタンを選択します。
- 単一の言語のみでタイトルと本文が書かれているタイトル ニュース エントリを更新する場合、[言語の追加] を選択すると、このタイトルニュースのローカライズされたバージョンを追加できます。
将来公開予定の非公開エントリを投稿する場合、公開とアーカイブの状態を使って処理する方法があります。 タイトル ニュースの更新では、スペルミスの修正もできます。
タイトル ニュースを削除する
エントリが不要になったら、ゲーム マネージャーで削除できます。
変更するエントリを検索するには、次のように実行します。
- [タイトル] に移動します。
- 左側のメニューで、[コンテンツ] を選択します。
- [ニュース タイトル] に移動します。
- [既存エントリ] のチェックボックスをチェックします。
- 削除する [タイトル ニュース] エントリを選択し、[X タイトル ニュースの削除] をクリックします。