お気に入り | 日本語 | ログイン

orkut デベロッパー ホーム

Orkut デベロッパー ガイドライン

このガイドラインでは、広告を配置できる場所、アプリによる更新に対応するテキスト サイズとスタイルの制限、アプリケーションのロードを高速にするための推奨事項など、orkut 開発プロセスで「すべきこと」と「してはいけないこと」を詳しく説明しています。「必須:」と「禁止:」で始まる事項は順守していただく必要があります。順守されない場合、orkut ディレクトリからアプリが削除されることがあります (下記の違反セクションをご覧ください)。また、「推奨:」は、適用可能な範囲で使用できる一般的な推奨事項を示しています。

役割

OpenSocial では、2 つの役割が存在します。まず、アプリケーションのオーナーとは、自分のプロフィールでアプリケーションをホストしている人のことです。一方、ビューアとは、オーナーのプロフィールを閲覧する人です。

自分のプロフィールにアプリケーションをインストールして閲覧する場合、ビューアとオーナーは同じ人ということになります。これは特殊なケースです。たいていの場合、ビューアとオーナーは別の人です。ビューアとオーナーの間には、友だち、友だちの友だち (FoF)、または無関係という 3 種類の関係があります。

ビューアはオーナーとの関係とは別に、アプリ自体と関係を持ちます。自分のプロフィールにアプリをインストールしている場合と、していな い場合です。これらの関係を次の図で示します。

ユーザー エクスペリエンス

必須事項

  • 必須: エラー処理ルーチンをインクルードし、ユーザーにわかりやすいメッセージを作成してください。HTML アラート ボックスは動作が不安定なため、なるべく使用しないことをお勧めします。
  • 必須: アプリケーションのコンテンツが変化するときは、gadgets.window.adjustHeight() メソッドを呼び出し、スクロールバーが現れないようにしてください。

推奨事項

  • 水平スクロールバーを表示させないためにアプリは、現在のビューの水平バウンド (プロフィール ビューでは 543 ピクセル、キャンバス ビューでは 835 ピクセル) 内で、すべてのコンテンツと一致している必要があります。相対的幅 (例: style="width:100%") を使用して、コンテンツを確実にラッピングするようにしてください。
  • 高可用性サービスや高帯域 CDN (コンテンツ配信ネットワーク) を使用して、更新 ビューやアプリケーション ビューの画像が壊れないようにしてください。
  • アプリは、ユーザーが送信する HTML スニペット (YouTube が動画の埋め込み用に提供している <object> タグなど) の要求やレンダリングをすることができます。
  • ユーザーがウェブ上を移動するとき、6 つのビューア ステータスに混乱する可能性があります。ビューアのステータスは、次の 2 つだけにすることをお勧めします。
    • アプリをインストールしている友だち (以後 FA と言います)
    • ゲスト - その他全員

禁止事項

  • アプリのロード中、空白の画面が表示されないようにしてください。「ロード中...」などのメッセージや映像を表示してください。

    ヒント:http://www.ajaxload.info/ を利用して、Ajax ローダー アイコンを作成できます。

プロフィール ビュー

プロフィール ページは、orkut コミュニティにとってユーザーの「顔」です。オーナーは、ユーザーのプロフィールがどのように表示されるかを容易に確認できる必要があります。

必須事項

  • プロフィール ビューに表示されるコンテンツは、アプリのオーナーに対するものと他のユーザーに対するものが同じでなくてはなりません。たとえば、すべてのユーザーは、オーナーのプロフィール ページで親友、お気に入りの映画などを見ることができる必要があります。ただし、利用できるアクションは異なっていてもかまいません。たとえば、オーナーはそのプロフィール ページの親友を編集できます。また、アプリをインストールしているビューアは、その編集に対してコメントできます。一方、アプリをインストールしていないゲスト ビューアは、編集を見ることしかできません。
  • ヒント: 最初はゲスト ビューア向けにデザインし、後から FA ビューア向けのアクションを追加します。最後に、アプリ オーナー向けのデザインを行います。

推奨事項

  • プロフィール ビュー内のアプリの高さは、デフォルトで 280 ピクセルです。これは 500 ピクセルまで拡張できます。垂直スクロールバーが現れないようにするには、すべてのコンテンツを 500 ピクセル以内にする必要があります。

禁止事項

  • 禁止: プロフィール ビュー内での自動再生は行わないでください。プロフィールには最大 3 つのアプリを表示できるため、音楽やビデオ クリップといった複数のアプリケーションが同時に自動再生を開始すると、ユーザーを混乱させる可能性があります。ただし、キャンバス ビューでの自動再生は許可されています。
  • 禁止: ゲスト ビューアがアプリを使用する前に、そのプロフィールにアプリのインストールを強要するようなメッセージを表示しないでください。前述したように、アプリのオーナーとすべてのビューアに対しては、同じコンテンツを表示しなくてはなりません。現在のユーザーにとって利用できないアクションを提示しないでください。たとえば、ゲスト ビューアに対して [お気に入りの本を追加] へのリンクを表示しないでください。アプリ データは、アプリをインストールしたビューアにしか利用できないためです。
  • 禁止: 現在のユーザーがアプリケーションをインストールしていない場合、そのアプリケーションを追加するためのリンクを含めないでください。Orkut では、プロフィール ビュー内の各アプリの下に [このアプリをプロフィールに追加] リンクを自動的に配置するため、あなたが宣伝を入れなくても、ユーザーは容易にアプリをインストールできるようになっています。

キャンバス ページ

推奨事項

  • キャンバス ページでは、アプリをインストールする前に、そのアプリを体験できるゲスト モードをサポートする必要があります。たとえば、次のような例があります。
    • myHangman のようなゲームでは、ゲスト ユーザーがそのゲームでプレイし、スコアをアプリ オーナーのスコアと比較できるようにする必要があります。
    • PhotoAttack のようなインタラクティブなアプリでは、ゲスト ユーザーがアプリ オーナーの写真を使ってフォトアタックを作成できるようにする必要があります。
  • 現在の API では、インストールのコールバックをサポートしていません。このサポートが API に追加されるまでは、ブラウザの cookie を使用して、このユース ケースに対応してください。
  • 音楽や動画の自動再生は、キャンバス ページでは許可されています。これは、キャンバス ページでは複数のアプリを同時に自動再生しても問題がないためです。

禁止事項

  • 禁止: ユーザーがプロフィール ビューからキャンバスに移動しているとは仮定しないでください。ユーザーはキャンバス ビューに直接来る可能性があるため、上記のプロフィール ビューのガイドラインを順守してください (下記で明示的に無効にされる部分は除きます)。
  • 禁止: 自動リダイレクトは設定しないでください。すべてのリダイレクトは、ユーザー自身の行為 (リンクのクリックなど) によって起動される必要があります。
  • 禁止: ゲスト ビューアをアプリのインストールページにリダイレクトしないでください。

更新

OpenSocial のアクティビティは orkut の更新として表示されます。ユーザーの代わりに、アプリによって投稿されたアクティビティは、そのユーザーの [更新] ページで表示できます。また、すべての友だちのアクティビティは、ホームページの [友だちからの更新] パネルに収集されます。現在、各アプリは、1 人につき 1 日 1 つの更新を投稿できます。

必須事項

  • 更新には、ユーザーのアクション (例: アーティストの追加、友だちにギフトを送る、レビューを書く) を反映しなくてはなりません。.
  • 使用する画像はすべて、ユーザーが作成、ブックマーク、投稿したものと関連したものでなくてはなりません。
  • タイトルとボディに表示される情報は別個でなくてはなりません。また、重複があってはなりません。

推奨事項

  • アプリ内で、更新が追加されたことを通知する必要があります。
  • オーナーが友だちと関係を持つ場合 (たとえば、[親友] を使用して新しい友だちを追加するなど)、その友だちのプロフィール写真を表示してください。
  • 更新は要約してください。複数の更新よりも、要約更新を作成するほうが、はるかに有益です。アプリは更新をプールし、キャンバスの window.unload イベントに投稿できます。たとえば、次のような例があります。
    • この更新では、ユーザーの名前を 3 回繰り返し、ReadingSocial に 3 回言及しています。更新では、ユーザーの名前、アプリ名、本の題名に言及するのは 1 回にとどめるようにしてください。また、この文は文法的にも正しくありません。「their」ではなく「his ReadingSocial bookshelf」とすべきです。

      ヒント: opensocial.Person.getField(opensocial.Person.Field.GENDER) を使用して、適切なジェンダーを示す opensocial.Enum.Gender オブジェクトを返すことができます。

    • 次のような更新は要約して、情報密度を濃くする必要があります。たとえば、タイトルを「Eduardo Cordeiro added Regina Spektor to his Artists iLike」とし、ボディにアルバム カバーを表示して、追加された 2 曲を入れます。

禁止事項

  • 禁止: アクティビティ オーナーのプロフィール写真は表示しないでください。プロフィール写真の表示は、更新に一意の情報を追加しません。
  • 禁止: 更新ではアプリケーション ロゴを表示しないでください。アプリは既にタイトルで属性を取得しており、そのお気に入りアイコンがすぐに追加されます。
  • 禁止: 非ブランドの更新を表示しないでください。次のような更新は基本的にアプリの広告であり、許可されません。アクティビティには、読んでいる本の題名など多くの情報を表示する必要があります。
  • 禁止: アプリケーションを追加するためのリンクや AppInfo ページへのリンクを含めないでください。これらは、orkut によって自動的に追加されます。次のような更新は許可されません
  • 禁止: 太字体や 12pt よりも大きいサイズのフォントを使用しないでください。次の例は両方に違反しており、許可されません

サードパーティ サーバー上のユーザー データ

必須事項

  • すべてのユーザー情報は 7 日後に、サードパーティ サーバーから削除されなくてはなりません。ただし、次のフィールドは無期限に保存することができます。
    • ID
    • NAME
    • PROFILE_URL
    • THUMBNAIL_URL
    アンインストール イベント ハンドラのサポートが追加された場合、ユーザー プロフィール情報の保存期間は、アプリケーションが削除されるまでに延長される可能性があります。それまでは、保存期間は最長 7 日間です。

メンテナンス

推奨事項

  • バックエンドのメンテナンス時にアプリが壊れるのを防ぐために、次の手続きを行ってください。
    1. アプリ仕様をメンテナンス バージョンに更新し、新しい仕様がキャッシュされるのを待ちます。
    2. 必要な任意のメンテナンスを行い、サンドボックスで変更をテストします。
    3. 更新したアプリ仕様でメンテナンス バージョンを置き換えます。
    4. 更新したアプリ仕様が再キャッシュされるのを待ちます。
  • バックエンドの変更が必要ない場合、現在のアプリケーションをメンテナンス バージョンで置き換える必要はありません。更新した仕様を新しいファイル内に置き、変更をサンドボックスでテストし、準備ができたら現在の仕様を新しいコードで置き換えるだけです。

ディレクトリ リスティング

必須事項

  • 必須: アプリケーションをディレクトリに送信する前に、次の ModulePrefs 属性を必ず指定してください。
    • title
    • description
    • author
    • author_email
    • screenshot
    • thumbnail
  • 必須: アプリのロゴとお気に入りアイコンには必ず透明な背景を使用してください。これらは様々な色の背景で表示されるためです。

推奨事項

  • アプリの名前をロゴに組み込んでください。
  • ModulePrefs スクリーンショット属性は必須ではありませんが、推奨されています。スクリーンショットは、400x400 ピクセルよりも小さくしてください。

ヘルプとサポート

可能な限り最高のユーザー エクスペリエンスを創造し、アプリケーションの人気を短期間に高めるため、Google では包括的ヘルプ リソースの作成をお勧めしています。アプリケーションの動作や、orkut との関連、質問やバグの連絡方法について理解したユーザーは、引き続きアプリケーションを使用したり、友だちと共有するようになります。Orkut チームは、個人のアプリケーションに対するユーザー サポートを提供していません。アプリケーションのサポートを提供することで、あなたは素晴らしいユーザー エクスペリエンスを創造できるだけではありません。ユーザーからのフィードバックを活用して、アプリケーションを改良することも可能になります。

必須事項

  • 必須: ユーザーが作者を特定しやすいように、デベロッパーの社名/組織名を必ず記載してください。
  • 必須: あなたのサイトやブログなど外部で使用されている基本的な FAQ/ヘルプ コンテンツを必ず提供してください。これには、アプリの目的の要約、基本的な機能と使い方に関する情報、よくある質問などを含めてください。ReadingSocial から一例を示します。
  • 必須: [このアプリについて] ページからリンクできるように、ヘルプ コンテンツへの URL を必ず提供してください。
  • 必須: ユーザーがあなたに連絡する方法 (メール アドレス、グループ、フォーラム、または定期的に監視して参加している orkut コミュニティ) を必ず提供してください。ActOnME の PhotoAttack アプリで提供されているヘルプ リンクはその一例です。これは、アプリをめぐる積極的なコミュニティを創造し、ユーザーのフィードバックをもらい、バグをトラブルシューティングする上で重要です。

遅延

アプリを orkut にロードする時間を大幅に短縮するには、いくつかの方法があります。ウェブ開発の一般的な慣行から、orkut に特化したカスタマイズまで、アプリを高速にする方法は、遅延削減フィールド マニュアル をご覧ください。いくつかの要点を次に挙げます。

必須事項

  • 必須: 複数のリクエスト項目を 1 つのデータ要求にバッチする必要があります。最初の DataRequest で必要なデータをすべて要求するのが最善の方法です。Orkut は、このデータを「プリフェッチ」し、アプリのロード開始に備えることができるためです。
  • 必須: サードパーティ サーバーから返されたすべてのデータは必ず、gzip を使用して圧縮してください。

注: gzip されたデータを返す HTTP 応答はすべて、応答ヘッダー Content-Encoding を「gzip」に設定しなくてはなりません。

推奨事項

  • プロフィール ビューで、サードパーティ コンテンツのリクエストを行わないでください。アプリは、プロフィール ビューのレンダリングに必要なデータを保存するのに、OpenSocial の永続性 API (例: アプリ データ) を使用する必要があります。アプリ データはプリフェッチされ、ネットワークの遅延を引き起こしません。
  • キャンバス ページやプロフィール ページに合わせてカスタマイズしたビューをレンダリングするには、ガジェット仕様内の複数コンテンツ セクションを活用してください。特にプロフィール ビューはなるべく簡素にしてください。
  • 複数の JavaScript ファイルを 1 つのスクリプトに連結してください。
  • 複数のスタイルシート ファイルを 1 つのスタイルシートに連結してください。
  • JavaScript は、アプリ仕様の最後に配置してください。
  • YUI Compressor などのツールを使用して、JavaScript や CSS のサイズを最小化してください。
  • 推奨: 複数の画像を個別に配置するのではなく、CSS スプライトを使用することをお勧めします。
  • 推奨: 2~4 箇所のドメインまたはサブドメインから画像をロードすることで、開いている HTTP 接続の数を最適化することをお勧めします。
  • キャッシュを利用するには、サーバーの HTTP レスポンスの 「Expires」 ヘッダーを適切な値に設定してください。

セキュリティ

必須事項

  • 必須: オンスクリーンを表示する前に、すべてのユーザー入力を必ずエスケープしてください。
    • 一般的に、ユーザー入力は注意深く処理する必要があります。ユーザーの入力した JavaScript が不注意に実行されることがないよう、gadgets.util.escapeString を使用して、すべての入力を、これらが出力される前にエスケープする必要があります (たとえば、要素の「innerHTML」プロパティを割り当てます)。
    • アプリ データはユーザー入力の特別クラスであり、フェッチされると自動的にエスケープされます。言い換えれば、1 つの文字列値の保存に使用されるアプリ データの場合、エスケープする必要はありません。ただし、アプリ データが JSON 文字列を格納している場合、gadgets.json.parse に渡される前にアンエスケープしなくてはなりません。しかし、こうすることで、返された JavaScript オブジェクトのすべてのプロパティ値がすべてアンエスケープされてしまうため、元の問題が再び起こります。この場合、悪意のあるまたは誤ったスクリプトを格納した場合の出力がなされる前に、すべてのプロパティ値をエスケープしなくてはなりません。

      ヒント: 迷ったときは、表示する前に、すべての文字列データをエスケープしてください。エスケープは繰り返し可能な操作であるため、既にエスケープされた文字列に対してエスケープ操作を行っても有効にはなりません。

  • 必須: サードパーティ リソースに対するすべてのリクエストは、必ず署名して確認してください。
    • gadgets.io.makeRequest を使用するときは、この手法を使用して、最初にリクエストに署名してください。署名されたリクエストは、リクエストが真正なものか (orkut から要求されたリクエストであるか)、またリクエスト者は正当なものか (ビューアの OpenSocial ID が署名されており、リクエストと一緒に送信されているか) を検証するための手がかりを提供します。PHP を使用した署名済みリクエストの検証のサンプル コードは現在英語でご利用いただけます。その他の言語でも間もなく提供される予定です。

広告/収益化

デベロッパーは、orkut.com と収益を分配する必要はありません。Google AdSense をご利用の場合、標準の AdSense 規約が適用されます。

必須事項

  • 広告は、それが広告であるか、スポンサー付き広告/メッセージであるかを表示しなくてはなりません。
  • 広告は、Google AdWords に記載されているガイドラインに適合していなくてはなりません。次にいくつかの要約を挙げます。
    • 広告を、システムの機能や警告に似せてはなりません。
    • 広告に含まれるコンテンツは、すべてのユーザーにとって適切な FamilySafe コンテンツでなくてはなりません。
    • 広告は、許可なく著作権コンテンツを宣伝してはなりません。
    • 広告のサイズは、広告レクタングルを超えてはなりません。
    • Flash 広告のサイズは 50K より小さくなくてはなりません。.
    • アニメーション広告は 15 秒以内とし、終了後は静止した状態にならなくてはなりません。
    • ストロボ効果や背景の点滅効果が付いた広告、その他ユーザーを邪魔するような広告は許可されません。

推奨事項

  • 共同ブランド広告は、プロフィールとキャンバスビューにのみ、かつユーザーが配置したもので、非営利オプションがあるものに限り許可されます。たとえば、次のような例です。
    • 「ピーターはアマールにハイネケン ビールを贈った」は、ピーターがアマールに何か他のもの (たとえば、ハイファイブ) を贈ることができるのであれば大丈夫です。
    • スライドショーにスポンサー付きスキンを使用するのは、ユーザーがそれを選択し、利用可能なデフォルトのスキンがあれば大丈夫です。
  • 他のアプリのクロスプロモーションは、そのアプリのインストールが、現在のアプリに含まれる他の機能のロック解除に関連付けられていない限り、キャンバス ページで許可されています。
  • キャンバスでの広告は許可されています。デベロッパーは任意の広告ネットワークを使用したり、広告を直接アレンジして配置するかは自由です。

禁止事項

  • 禁止: プロフィール ビューには広告を表示しないでください。
  • 禁止: プロフィール ビューでは他のアプリケーションや製品を宣伝しないでください。
  • ユーザーをミスリードすることを意図したテキストやコンテンツを広告に表示しないでください。たとえば、「ここをクリックして、友だちにメッセージを送る」が、意図したコンテンツとは関係のない製品にリンクしないようにしてください。

ローカライズ

Orkut 専用のローカライズ ガイドラインは間もなくご利用いただけます。現時点では、Google ガジェットの国際化に関するドキュメントに記載されている推奨事項をご確認してください。

ポリシー違反

ポリシー違反が見つかった場合、あなたのアプリは 10 日間ディレクトリから削除されます。アプリをインストールしているユーザーは、使用を続けることができますが、あなたはこの期間中、ユーザー ベースを成長させることができません。

ポリシー違反が再度見つかった場合、あなたの会社や組織で製作されたすべてのアプリが 30 日間ディレクトリから削除されます。違反が修正されるまでの期間は、アプリを復帰することはできません(この期間は、どちらか長いほうが適用されます)。