LoginSignup
0
0

More than 5 years have passed since last update.

Fuseでのアプリの署名のやりかた

Last updated at Posted at 2016-12-09

署名について(公式サイトへ)

ストア申請用のアプリを書き出すには、署名情報が必要になります!各OSの署名の設定について書きます。(基本的に公式サイトの簡単な翻訳になります。)これが終わったら、各コンポーネントとかについて、実際に作りながら書くつもりです!

基本的には、プロジェクト作成時に自動で作られた、.unoprojファイルに署名情報を書いていきます!

◎Android

まずは、keytoolを使って、証明書ファイルを作成します。keytoolコマンドを使うにはJDKがインストールされていることが必要です。

keytool -genkey -v -keystore release.keystore \
    -alias application -keyalg RSA -keysize 2048 -validity 10000

ファイル名やエイリアスや期限は適宜変更してください。実行すると、証明書の生成に使用する名前や組織、パスワードなどその他の情報の入力を求められます。生成された証明書をプロジェクトフォルダにいれておきます。

アプリを証明書を紐づけるため、.unoprojに下記のように追加します。

sample.unoproj
{
    "Android": {
        "Key": {
            "Alias": "application",
            "AliasPassword": "password",
            "Store": "release.keystore",
            "StorePassword": "password"
        }
    }
}

パスワードなど、証明書を作ったときに入力した情報と同じように入力してください。

この証明書が使われるのはリリースビルドの時のみです。デバッグの時は、用意されているデバッグ用のキーを使うようになっています。

情報が正しく入力されていれば、以上でリリース用のAndroidアプリを書き出すことができます。

◎iOS

まずは、下記を実行します。

fuse build -t=iOS -c=Release -adebug

Xcodeが立ち上がったら、あとは通常の手順で署名していく感じです。これは、、「Xcode 証明書」とかでググってください。(ほんとすんません:/)

Xcode Development Team IDs

Xcode8から、デバッグビルドでも署名が必要になりました。しかし、XcodeでTeam IDを設定しておけば、残りのめんどくさい部分を自動的にやってくれるはずです。

Team IDはこちらのメンバーシップの項目に書いてあります。

Unoはマシンの署名情報から、XCodeの開発者Team IDを自動的に探してくれます。
自分で設定する場合は、.unoprojファイルに追加します。

sample.unoproj
{
  "iOS": {
    "DevelopmentTeam": "YOURTEAMID"
  },
  ...
}

もしくは、昨日紹介したビルド時のオプションを追加して設定することもできます。

fuse build -t=iOS -s:Project.iOS.DevelopmentTeam="YOURTEAMID"

同じMacを複数人の開発者で共有する場合は~/.unoconfig(なければつくる)に

iOS.DevelopmentTeam: "YOURTEAMID"

を書いておくといいみたいです。

No matching provisioning profiles found

と言われる場合はとりあえず-adebugオプションつけて実行せい!って書いてあります。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0