次の記事は、自動翻訳技術を使用して自動的に翻訳されました。 コンピュータプログラムによって翻訳されているため、誤りがある場合があります。Adobeは、世界中の多くのユーザーがより多くの記事を利用できるように、翻訳版を提供しています。
翻訳の品質を評価してください。Translation by SYSTRAN


書き込みAPI

戻る:

この節では、APIのバージョン1のメソッドを記述します。 概要についてはPhoneGap Build APIを、読み取りメソッドについてはPhoneGap Build Read APIを参照してください。

すべての書き込みAPIメソッドは、JSONでエンコードされたコンテンツを必要とします。 多くの場合、ファイルのアップロードも受け付けます。 API要求には、コンテンツタイプが multipart/form-dataであり、JSON要求の本文にはdataという名前を付ける必要があ ります

APIの書き込みインターフェイスには、次のものが含まれます。

POST/api/v1/apps 新しいアプリを作成

PUT/api/v1/apps/:id 既存のアプリを更新

POST/api/v1/apps/:id/build 特定のアプリのビルドを開始

POST/api/v1/apps/:id/build/:platform 特定のプラットフォーム用アプリのビルドの開始

POST/api/v1/apps/:id/collaborators Add a Collaborator To an App

PUT/api/v1/apps/:id/collaborators/:id Update a Collaborator On a App

POST/api/v1/keys/:platform 特定のプラットフォームの署名キーを追加する

PUT/api/v1/keys/:platform/:id 特定のプラットフォームの署名キーを更新/ロック解除する

DELETE/api/v1/apps/:id Delete an App

DELETE/api/v1/apps/:id/collaborators/:id Delete a Collaborator for an App

DELETE/api/v1/keys/:platform/:id キーを削除する

投稿https://build.phonegap.com/api/v1/apps詳細

新しいアプリを作成します。 必須パラメーター:

  • タイトル: アプリのタイトルを指定する必要があります。 パッケージの config.xmlで指定されたタイトルが優先されます

  • create_method: アプリの作成方法(以下で説明します)。 有効な値は次の2つです。

    • ファイル: アプリコンテンツと共にファイルをアップロード中

    • remote_repo: アプリのコンテンツを含むリモートリポジトリがある場合

オプションのパラメーター:

  • パッケージ: アプリのパッケージIDを設定します。 これは、アプリの作成後、または config.xmlファイルで変更できます 。 デフォ ルトはcom.phonegap.www

  • バージョン: アプリのバージョン番号を設定します。 これは、アプリの作成後、または config.xmlファイルでも変更できます 。 デフォルト は0.0.1です。

  • 説明: アプリの説明を設定します。 作成後、または config.xmlファイルで変更することもできます 。 デフォルトは空のテキストです。

  • debug: 「リモートデバッグツール」の説明に従って、アプリをデバッグモードで構築します。 デフォルトは falseです

  • キー: 署名する各プラットフォームで使用する署名キーを設定します。 (詳しくは、以下を参照してください)。

  • private: アプリを一般にダウンロードできるかどうか。 デフォル トはtrue

  • タグ: クローンを作成するタグまたはブランチ。 デフォルトは masterです

  • 共有: プライベートアプリを公開共有および表示できるかどうか。 デフォルトは falseです

  • phonegap_version: アプリで使用するPhoneGapのバージョン。 サポートされているものと、現在どのものがデフォルトであるかについて詳しくは、「設定リファレンス」を参照してください。

  • 水和物: 「共同作業とテスト」の説明に従って、Hydrationが有効になっているアプリを構築します。 デフォルトは falseです

create_method

新しいアプリは、アーカイブファイルまたはリモートgitリポジトリから作成できます。 JSONデータの create_methodパラメーターを設定すると 、使用するメソッドを選択できます。

createメソッドは不変です。 リポジトリから作成されたアプリケーションは、ファイルバックアップに変更したり、逆に変更したりすることはできません。 後日変更する場合は、古いアプリを削除し、新しいアプリを作成します。

ファイル・バックアップ・アプリケーション

ファイルをバックアップしたアプリケーションを作成するには、 create_method パラメータを fileに設定し、(targz)または index.htmlファイルを含めます。

$ curl -F file=@/Users/alunny/index.html -u andrew.lunny@nitobi.com -F 'data={"title":"API V1 App","package":"com.alunny.apiv1","version":"0.1.0","create_method":"file"}' https://build.phonegap.com/api/v1/apps
{
    "keys":{
        "ios":{
            "title":"ios-key",
            "default":true,
            "id":2,
            "link":"/api/v1/keys/ios/2"
         },
         "android":{
            "title":"release-key",
            "default":true,
            "id":2,
            "link":"/api/v1/keys/android/2"
         }
    },
    "download":{},
    "title":"API V1 App",
    "repo":null,
    "collaborators":[
        {
            "person":"andrew.lunny@nitobi.com",
            "role":"admin"
        }
    ],
    "role":"admin",
    "id":26486,
    "icon":{
        "filename":null,
        "link":"/api/v1/apps/26486/icon"
    },
    "package":"com.alunny.apiv1",
    "version":"0.1.0",
    "description":null,
    "debug":false,
    "private":true,
    "share":false,
    "link":"/api/v1/apps/26486",
    "status":{
        "ios":"pending",
        "android":"pending",
        "winphone":"pending"
    },
    "error":{},
    "phonegap_version":"3.5.0",
    "hydrates":false,
    "build_count":null
}

リモート・リポジトリに対応したアプリケーション

リモートリポジトリに基づいてアプリケーションを作成するには、 create_method パラメーターを remote_repoに設定し、リポジトリのURLと共に repo パラメーターを含めます。 必要に応じて、 取り出す分岐 またはタグを示すタグパラメーターを含めます。

URLは、公開されたアクセス可能である必要があります。 PhoneGap buildは、リポジトリに対して認証を行いません。 コードを非公開にする場合は、次のいずれかの create_methodオプションを使用します

$ curl -u andrew.lunny@nitobi.com -d 'data={"title":"API V1 App","repo":"https://github.com/alunny/phonegap-start.git", "tag":"master", "create_method":"remote_repo"}' https://build.phonegap.com/api/v1/apps
{
    "keys":{
        "ios":{
            "title":"ios-key",
            "default":true,
            "id":2,
            "link":"/api/v1/keys/ios/2"
         },
         "android":{
            "title":"release-key",
            "default":true,
            "id":2,
            "link":"/api/v1/keys/android/2"
         }
    },
    "download":{},
    "title":"alunnys Amazing App",
    "repo":"https://github.com/alunny/phonegap-start.git",
    "tag":"master",
    "collaborators":[
        {
            "person":"andrew.lunny@nitobi.com",
            "role":"admin"
        }
    ],
    "role":"admin",
    "id":26488,
    "icon":{
        "filename":"blurry",
        "link":"/api/v1/apps/26488/icon"
    },
    "package":null,
    "version":null,
    "description":null,
    "debug":false,
    "private":true,
    "share":true,
    "link":"/api/v1/apps/26488,
    "status":{
        "ios":"pending",
        "android":"pending",
        "winphone":"pending"
    },
    "error":{},
    "phonegap_version":"3.5.0",
    "hydrates":false,
    "build_count":null
}

認証を必要とするリポジトリURLを指定すると、応答の本文にエラーメッセージと共に 400 HTTPステータスコードが返されます。

$ curl -u andrew.lunny@nitobi.com -d 'data={"title":"API V1 App","repo":"https://alunny@github.com/alunny/phonegap-start.git","create_method":"remote_repo"}' https://build.phonegap.com/api/v1/apps
{
    "error":"Private repository URLs not supported - try removing "alunny@""
}

PhoneGap buildアカウントがGithubアカウントにリンクされている場合は、プライベートGithubリポジトリから取得できます。 その他の認証済みURLは、上記のように失敗します。

署名キー

PhoneGap buildでビルドに署名するには、まず POSTのhttps://build.phonegap.com/api/v1/keysメソッド、またはWebインターフェイスを使用して、1つ以上のキーをアップロードする必要があります。 同じURLにGET要求を送信すると、アカウントに関連付けられたすべてのキーの一覧を取得できます。

ビルド サーバーに送信するdata JSONハッシュでは、このビルドに使用するキーをプラットフォームごとにIDで指定できます。

各プラットフォームの値は、次のような整数のidです。

"keys":{"ios":123}

または、次のような password フィールドを含むオブジェクト、または key_pwkeystore_pw の各フィールド(Androidの場合)を含むオブジェクト。

"keys":{"ios":{"id":123,"password":"password1"}

2番目の形式を使用すると、https://build.phonegap.com/v1/keys/ios/123に別のPUT要求を行うことなく、指定したキーのロックを解除でき ます

次に、最初の形式を使用した投稿の例を示します。

$ curl -u andrew.lunny@nitobi.com -d 'data={"title":"Signing Keys","repo":"https://github.com/alunny/phonegap-start.git","create_method":"remote_repo","keys":{"ios":123,"android":567,"winphone":72}}' https://build.phonegap.com/api/v1/apps
{
    "keys":{
        "ios":{
            "title":"new iOS key",
            "default":false,
            "id":123,
            "link":"/api/v1/keys/ios/123"
         },
         "android":{
            "title":"some android key",
            "default":false,
            "id":567,
            "link":"/api/v1/keys/android/567"
         },
         "winphone":{
             "id": 72,
             "title": "Windows Publisher Key",
             "link": "/api/v1/keys/winphone/72",
             "default": false
         }
    },
    "download":{},
    "title":"Remote Application",
    "repo":"https://github.com/phonegap/phonegap-start.git",
    "collaborators":[
        {
            "person":"andrew.lunny@nitobi.com",
            "role":"admin"
        }
    ],
    "role":"admin",
    "id":36500,
    "icon":{
        "filename":"null",
        "link":"/api/v1/apps/36500/icon"
    },
    "package":null,
    "version":null,
    "description":null,
    "debug":false,
    "private":true,
    "link":"/api/v1/apps/36500,
    "status":{
        "ios":"pending",
        "android":"pending",
        "winphone":"pending"
    },
    "error":{},
    "phonegap_version":"3.5.0",
    "hydrates":false,
    "build_count":null
}

PUT https://build.phonegap.com/api/v1/apps/:id詳細

既存のアプリケーションのコンテンツ、ビルド設定、またはその両方を更新します。 応答は、 GET /api/v1/apps/:idと同じ、アプリのJSON表現です

タイトル、説明、バージョンなどのアプリのメタデータは、 config.xmlファイルを使用して更新する必要があります。 ビルド設定を更新するには、JSONオブジェクトをパラメーターデータとして送信す る必要がある。 このJSONオブジェクトで使用できるオプションは次のとおりです。

  • debug: リモートデバッグツールの説明に従って、アプリをデバッグモードで構築するかどうかを指定します。

  • private: アプリで表示が制限されているかどうか。

  • 共有: プライベートアプリを公開表示できるかどうか。

  • タグ: gitリポジトリから複製するブランチまたはタグ。

次に、アプリのバージョン番号を更新する簡単な例を示します。

$ curl -u andrew.lunny@nitobi.com -X PUT -d 'data={"version":"0.2.0"}' https://build.phonegap.com/api/v1/apps/8
{
    "id":8,
    "version":"0.2.0",
    "keys":{
        "ios":null,
        "android":null
    },
    "repo":null,
    "download":{},
    "collaborators":[
        {
            "person":"andrew.lunny@nitobi.com",
            "role":"admin"
        }
    ],
    "title":"App From API",
    "role":"admin",
    "icon":{
        "filename":null,
        "link":"/api/v1/apps/8/icon"
    },
    "package":null,
    "link":"/api/v1/apps/8",
    "debug":false,
    "private":true,
    "share":true,
    "description":null,
    "status":{
        "winphone":"pending",
        "ios":null,
        "android":"pending",
    },
    "error":{},
    "phonegap_version":"3.5.0",
    "hydrates":false,
    "build_count":12
}

デフォルトでは、メタデータが変更されると、サポートされているすべてのプラットフォーム用にアプリが構築されます。

アプリ署名キー

新しいアプリの作成と同様に、構築するプラットフォームごとに使用する署名キーを指定できます。 キーの資格情報を設定して、キーがロック解除され、使用できる状態に保つこともできます。

次のサンプル投稿では、アプリの新しいAndroidキーを選択し、ロックを解除します。

$ curl -u andrew.lunny@nitobi.com -X PUT -d 'data={"keys":{"android": {"id":457,"key_pw":"password1","keystore_pw":"password2"}}' https://build.phonegap.com/api/v1/apps/36500

{
    "keys":{
        "ios":{
            "title":"new iOS key",
            "default":false,
            "id":123,
            "link":"/api/v1/keys/ios/123"
         },
         "android":{
            "title":"changed android key",
            "default":false,
            "id":457,
            "link":"/api/v1/keys/android/457"
         }
    },
    "download":{},
    "title":"Remote Application",
    "repo":"https://github.com/phonegap/phonegap-start.git",
    "collaborators":[
        {
            "person":"andrew.lunny@nitobi.com",
            "role":"admin"
        }
    ],
    "role":"admin",
    "id":36500,
    "icon":{
        "filename":"null",
        "link":"/api/v1/apps/36500/icon"
    },
    "package":null,
    "version":null,
    "description":null,
    "debug":false,
    "private":true,
    "link":"/api/v1/apps/36500,
    "status":{
        "ios":"pending",
        "android":"pending",
        "winphone":"pending"
    },
    "error":{},
    "phonegap_version":"3.5.0",
    "hydrates":false,
    "build_count":null
}

ファイルベースのアプリケーションの更新

ファイルのアップロードからアプリケーションを作成した場合は、新しい index.html、zip、 tar.gzの各ファイルを、 file パラメーターとして指定し、コンテンツを更新するように要求できます。

$ curl -u andrew.lunny@nitobi.com -X PUT -F file=@/Users/alunny/new/index.html https://build.phonegap.com/api/v1/apps/8

リポジトリベースのアプリケーションの更新

リモートリポジトリからアプリケーションを更新するには、単に pull フィールドを data hashに追加し、 trueに設定します

$ curl -u andrew.lunny@nitobi.com -X PUT -d 'data={"pull":"true"}' https://build.phonegap.com/api/v1/apps/8

次に、PhoneGap buildは、リモートリポジトリから新しいコードをダウンロードし、サポートされるすべてのプラットフォーム向けにアプリを再構築します。

投稿https://build.phonegap.com/api/v1/apps/:id/build詳細

指定したアプリの新しいビルドをキューに入れます。 古いビルドは破棄され、新しいビルドはキューに入れられます。

ビルドでは、選択した署名キーに加えて、最新のアプリのコンテンツが使用されます。 応答のステータスは 202 (受け入れ済み)です。

$ curl -u andrew.lunny@nitobi.com -X POST -d '' https://build.phonegap.com/api/v1/apps/12/build

構築するプラットフォームを選択するには、JSONエンコードパラメーターとして含めます。

$ curl -u andrew.lunny@nitobi.com -X POST -d 'data={"platforms":["android"]}' https://build.phonegap.com/api/v1/apps/12/build

ビルドがキューに入れられたら、 GET /api/v1/apps/:idの結果を確認し、各プラットフォームのステータスが complete (完了)またはerror(エラー)に変わったかどうかを確認し ます

投稿https://build.phonegap.com/api/v1/apps/:id/build/:platform詳細

単一のプラットフォーム向けに構築する単純なURL:

$ curl -u andrew.lunny@nitobi.com -X POST -d '' https://build.phonegap.com/api/v1/apps/12/build/android

投稿https://build.phonegap.com/api/v1/apps/:id/collaborators詳細

特定のアプリケーションで共同作業者を追加します。 その場合は、アプリの所有者/管理者である必要があります。

必須パラメーター:

  • 電子メール: 新しい共同作業者の電子メールアドレス。

  • 役割: 新しい共有者のアクセスレベル: テス ター (読み取り専用)または 開発 (読み取りおよび書き込み)。

ユーザーがシステム上にいる場合は、 201 (作成)HTTPステータスコードが生成され、ユーザーがアプリにアクセスできることが通知されます。 ユーザーが登録されていない場合、 202 (承認)ステータスが表示され、フォルダー共有が保留中として表示さ れます

フォルダー共有が追加された後、影響を受けるアプリケーションのJSON表現が返されます。

$ curl -u andrew.lunny@nitobi.com -d 'data={"email":"newguy@nitobi.com","role":"dev"}' https://build.phonegap.com/api/v1/apps/12/collaborators
{
    "id":12,
    "title":"App With Collaborators",
    "collaborators":{
        "link":"/api/v1/apps/9/collaborators",
        "pending":[
            {
                "person":"newguy@nitobi.com",
                "role":"developer"
            },
            {
                "person":"nobody@nitobi.com",
                "role":"tester"
            }
        ],
        "active":[
            {
                "person":"admin@nitobi.com",
                "role":"admin",
                "id":9,
                "link":"/api/v1/apps/9/collaborators/9"
            },
            {
                "person":"foo@bar.com",
                "role":"developer",
                "id":13,
                "link":"/api/v1/apps/9/collaborators/13"
            }
        ]
    },
    "package":"app.with.collaborators",
    ...
}

PUT https://build.phonegap.com/api/v1/apps/:id/collaborators/:id詳細

PhoneGap buildの特定の共同作業者の役割を、 devtesterに変更できます

アプリの所有者でない場合は、 401 件の不正な応答が返されます。 共有者の電子メールを変更することはできません。 この操作を行うと、 400 ステータスが返されます。

$ curl -u andrew.lunny@nitobi.com -d 'data={"role":"tester"}' -X PUT https://build.phonegap.com/api/v1/apps/12/collaborators/13
{
    "id":13,
    "person":"foo@bar.com",
    "role":"tester",
    "app":{
        "id":12,
        "download":{},
        "title":"My App",
        "role":"admin",
        "icon":{
            "filename":null,
            "link":"/api/v1/apps/12/icon"
        },
        "version":null,
        "package":null,
        "description":null,
        "debug":null,
        "link":"/api/v1/apps/12",
        "status":{
          "ios":"pending",
          "android":"pending",
          "winphone":"pending"
        },
        "phonegap_version":"3.5.0",
        "hydrates":false,
        "build_count":null,
        "error":{}
    },
    "link":"/api/v1/apps/12/collaborators/13"
}

投稿https://build.phonegap.com/api/v1/keys/:platform詳細

PhoneGap buildアカウントに署名キーを追加します。 platformパ ラメーターは URLで指定する必要があり、ターゲットとするプラットフォームに応じて異なるファイルが必要です。

iOS署名キー

iOSビルドでは、次の操作が必要です。

  • p12 証明書 ファイル
  • mobileprovision ファイ
  • 証明書にアクセスするためのパスワード(オプション)
  • 証明書とプロファイルのペアのタイトル

これらのファイルの取得方法について詳しくは、 iOS Signingのマニュアルを参照してください

サンプル投稿は次のようになります。

$ curl -u andrew.lunny@nitobi.com -F cert=@My_Certificate.p12 -F profile=@MyDevices.mobileprovision -F 'data={"title":"Developer Cert","password":"12345678"}' https://build.phonegap.com/api/v1/keys/ios
{
  "title":"Developer Cert",
  "default":false,
  "id":11,
  "link":"/api/v1/keys/ios/11",
  "provision":"meandmyteam.mobileprovision",
  "cert_name":"My_Certificate.p12",
  "role":"developer",
  "locked":false
}

passwordパラメーターを省略 した場合 、アップロードが完了し た後に 、キーがロックされます。 キーのロックを解除しないと、キーを使用してビルドできません。

Androidキー

Androidビルドでは、次の操作が必要です。

  • キース トア ・ファイル
  • そのキーストアに使用されるエイリアス
  • キーストアのパスワード(keystore_pw)(オプション)
  • 秘密キーのパスワード(key_pw) (オプション)
  • キーのタイトル

キーストアファイルと関連データを取得する方法について詳しくは、 Android Code Signingのマニュアルを参照してください

次に、サンプル投稿を示します。

$ curl -u andrew.lunny@nitobi.com -F keystore=@android.keystore -F 'data={"title":"Android Key","alias":"release", "key_pw":"90123456","keystore_pw":"78901234"}' https://build.phonegap.com/api/v1/keys/android
{
    "title":"Android Key",
    "default":false,
    "id":2,
    "alias":"release",
    "link":"/api/v1/keys/android/2",
    "locked":false
}

key_pwおよび keystore_pw _parametersの一方または両方を省略した場合 、キーはアップロー ド後にロ ックされます 。 キーのロックを解除しないと、キーを使用してビルドできません。

Windows Phoneキー

Windows phoneビルドでは、次の項目が必要です。

  • キーのタイトル
  • windows phoneストアアカウントの発行者ID。

次に、サンプル投稿を示します。

$ curl -u andrew.lunny@nitobi.com -F 'data={"title":"Winphone Key","publisher_id":"04739CCE-16E5-4680-8644-0004225CBCF6"}' https://build.phonegap.com/api/v1/keys/winphone
{
  "title":"Winphone Key",
  "default":false,
  "id":72,
  "link":"/api/v1/keys/winphone/72",
}

key_pwおよび keystore_pw _parametersの一方または両方を省略した場合 、キーはアップロー ド後にロ ックされます 。 キーのロックを解除しないと、キーを使用してビルドできません。

PUT https://build.phonegap.com/api/v1/keys/:platform/:id詳細

PhoneGap buildの既存の署名キーを更新します。署名キーのロックを解除して、今後のビルドで使用できるようにします。 キーのロックを解除するには、適切な資格情報を指定する必要があります。 ios用に1つのパスワード、またはAndroid用に2つのパスワード(キー用に1つ、キーストア用に1つ)。

注意: PhoneGap buildでは、キ ーのパスワード を確認できません。 正しくない場合は、そのキーを使用して作成しようとするとエラーが発生します。

  • iOSの例:

    $ curl -u andrew.lunny@nitobi.com -d 'data={"password":"password1"}' -X PUT https://build.phonegap.com/api/v1/keys/ios/11
    {
      "title":"Developer Cert",
      "default":false,
      "id":11,
      "link":"/api/v1/keys/ios/11",
      "provision":"meandmyteam.mobileprovision",
      "cert_name":"My_Certificate.p12",
      "role":"developer",
      "locked":false
    }
  • Androidの例:

    $ curl -u andrew.lunny@nitobi.com -d 'data={"key_pw":"password1","keystore_pw":"password2"}' -X PUT https://build.phonegap.com/api/v1/keys/android/2
    {
        "title":"Android Key",
        "default":false,
        "id":2,
        "alias":"release",
        "link":"/api/v1/keys/android/2",
        "locked":false
    }

削除https://build.phonegap.com/api/v1/apps/:id詳細

PhoneGap buildからアプリケーションを削除し、 202 (受け入れ)ステータスまたは 404 (アプリケーションが見つからない場合)を返します。

$ curl -u andrew.lunny@nitobi.com -X DELETE https://build.phonegap.com/api/v1/apps/8
{
    "success":"app 8 deleted"
}

削除https://build.phonegap.com/api/v1/apps/:id/collaborators/:id詳細

所有しているプロジェクトから共同作業者を削除する:

$ curl -u andrew.lunny@nitobi.com -X DELETE https://build.phonegap.com/api/v1/apps/12/collaborators/13
{
    "success":"foo@bar.com removed from app 9"
}

削除https://build.phonegap.com/api/v1/keys/:platform/:id詳細

PhoneGap buildから署名キーを削除し、 202 (受け入れ)ステータスまたは 404 (キーが見つからない場合)を返します。

$ curl -u andrew.lunny@nitobi.com -X DELETE https://build.phonegap.com/api/v1/keys/android/8
{
    "success":"android key 8 deleted"
}
GitHubでこのページを編集
Copyright SYSTRAN 2016
この翻訳は役に立ちましたか?

Translation by SYSTRAN