質問

Mac でアプリケーションを作成した場合、App Store を経由せずに iPhone で実行できるようにする方法はありますか?

公式 SDK を使用して作成されたアプリケーションを実行できる限り、iPhone をジェイルブレイクする必要があるかどうかは問題ではありません。理由には触れませんが、このプログラムを App Store に公開することはできません。

役に立ちましたか?

解決

公式開発者プログラム

標準の iPhone の場合、開発者プログラムのメンバーになるには、年額 99 ドルを支払う必要があります。その後、アドホック システムを使用して、アプリケーションを最大 100 台のデバイスにインストールできます。詳細は開発者プログラムに記載されていますが、各デバイスの UUID をアプリケーション パッケージに追加する必要があります。UUID は、以下を使用するのが最も簡単です。 アドホックヘルパー App Storeから入手できます。この方法の詳細については、Craig Hockenberry の記事を参照してください。 iPhone 2.0でのベータテスト 記事

ジェイルブレイクされたiPhone

ジェイルブレイクされた iPhone の場合は、私が個人的にテストした次の方法を使用できます。 加速度計グラフ iPhone OS 3.0のサンプルアプリ。

自己署名証明書の作成

まず、自己署名証明書を作成し、iPhone SDK にパッチを適用して、この証明書の使用を許可する必要があります。

  1. キーチェーンアクセス.appを起動します。項目が選択されていない状態で、「キーチェーン」メニューから「証明書アシスタント」を選択し、「証明書の作成」を選択します。

    名前:iPhone開発者
    証明書の種類:コードサイニング
    デフォルトを上書きしましょう:はい

  2. 「続行」をクリックします

    有効:3650日

  3. 「続行」をクリックします

  4. [電子メール アドレス] フィールドを空白にします。

  5. 完了するまで「続行」をクリックします。

    「このルート証明書は信頼できません」と表示されるはずです。これは予想通りです。

  6. 自己署名証明書の使用を許可するように iPhone SDK を設定します。

    sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist

    Xcode を開いている場合は、この変更を有効にするために Xcode を再起動します。

WiFi 経由の手動導入

次の手順で必要となるのは、 openssh, 、 そして uikittools 最初にインストールされます。交換する jasoniphone.local ターゲットデバイスのホスト名に置き換えます。両方に必ず独自のパスワードを設定してください。 mobile そして root SSH をインストールした後のユーザー。

アプリケーションを手動でコンパイルし、システム アプリとして電話機にインストールするには (Apple のインストール システムをバイパスします):

  1. プロジェクト、アクティブな SDK の設定、デバイス、およびアクティブなビルド構成の設定、リリース。

  2. プロジェクトを通常どおりコンパイルします (Build & Go ではなく、Build を使用します)。

  3. の中に build/Release-iphoneos ディレクトリにアプリバンドルが存在します。好みの方法を使用して、これをデバイス上の /Applications に転送します。

    scp -r AccelerometerGraph.app root@jasoniphone:/Applications/

  4. 新しいアプリケーションがインストールされたことを SpringBoard に知らせます。

    ssh mobile@jasoniphone.local uicache

    これは、アプリケーションを追加または削除する場合にのみ実行する必要があります。更新されたアプリケーションは再起動するだけで済みます。

開発中の作業を楽にするために、SSH キー認証をセットアップし、これらの追加のステップをカスタム ビルド ステップとしてプロジェクトに追加できます。

後でアプリケーションを削除したい場合は、標準の SpringBoard インターフェイスでは削除できず、SSH を使用して SpringBoard を更新する必要があることに注意してください。

ssh root@jasoniphone.local rm -r /Applications/AccelerometerGraph.app &&
ssh mobile@jasoniphone.local uicache

他のヒント

はい、iPhone Developer Program に参加し、Apple に 99 ドルを支払えば、最大 100 台の iOS デバイスにアプリケーションをプロビジョニングできます。

  • アプリを構築する
  • クラックサイトにアップロードする
  • (アプリの品質が十分であれば) クラック版は数分後に公開され、誰でもダウンロードできるようになります ;-)

の助けを借りて この郵便受け, 迅速な展開のために、アプリ Installous 経由でインストールするスクリプトを作成しました。

# compress application.
/bin/mkdir -p $CONFIGURATION_BUILD_DIR/Payload
/bin/cp -R $CONFIGURATION_BUILD_DIR/MyApp.app $CONFIGURATION_BUILD_DIR/Payload
/bin/cp iTunesCrap/logo_itunes.png $CONFIGURATION_BUILD_DIR/iTunesArtwork
/bin/cp iTunesCrap/iTunesMetadata.plist $CONFIGURATION_BUILD_DIR/iTunesMetadata.plist

cd $CONFIGURATION_BUILD_DIR

# zip up the HelloWorld directory

/usr/bin/zip -r MyApp.ipa Payload iTunesArtwork iTunesMetadata.plist

上記で参照した投稿に欠けているのは、iTunesMetadata です。これがないと、Installous はアプリを正しくインストールできません。以下は iTunesMetadata の例です。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>appleId</key>
    <string></string>
    <key>artistId</key>
    <integer>0</integer>
    <key>artistName</key>
    <string>MYCOMPANY</string>
    <key>buy-only</key>
    <true/>
    <key>buyParams</key>
    <string></string>
    <key>copyright</key>
    <string></string>
    <key>drmVersionNumber</key>
    <integer>0</integer>
    <key>fileExtension</key>
    <string>.app</string>
    <key>genre</key>
    <string></string>
    <key>genreId</key>
    <integer>0</integer>
    <key>itemId</key>
    <integer>0</integer>
    <key>itemName</key>
    <string>MYAPP</string>
    <key>kind</key>
    <string>software</string>
    <key>playlistArtistName</key>
    <string>MYCOMPANY</string>
    <key>playlistName</key>
    <string>MYAPP</string>
    <key>price</key>
    <integer>0</integer>
    <key>priceDisplay</key>
    <string>nil</string>
    <key>rating</key>
    <dict>
        <key>content</key>
        <string></string>
        <key>label</key>
        <string>4+</string>
        <key>rank</key>
        <integer>100</integer>
        <key>system</key>
        <string>itunes-games</string>
    </dict>
    <key>releaseDate</key>
    <string>Sunday, December 12, 2010</string>
    <key>s</key>
    <integer>143441</integer>
    <key>softwareIcon57x57URL</key>
    <string></string>
    <key>softwareIconNeedsShine</key>
    <false/>
    <key>softwareSupportedDeviceIds</key>
    <array>
        <integer>1</integer>
    </array>
    <key>softwareVersionBundleId</key>
    <string>com.mycompany.myapp</string>
    <key>softwareVersionExternalIdentifier</key>
    <integer>0</integer>
    <key>softwareVersionExternalIdentifiers</key>
    <array>
        <integer>1466803</integer>
        <integer>1529132</integer>
        <integer>1602608</integer>
        <integer>1651681</integer>
        <integer>1750461</integer>
        <integer>1930253</integer>
        <integer>1961532</integer>
        <integer>1973932</integer>
        <integer>2026202</integer>
        <integer>2526384</integer>
        <integer>2641622</integer>
        <integer>2703653</integer>
    </array>
    <key>vendorId</key>
    <integer>0</integer>
    <key>versionRestrictions</key>
    <integer>0</integer>
</dict>
</plist>

当然のことですが、MyApp のすべてのインスタンスをアプリの名前に置き換え、MyCompany を会社の名前に置き換えます。

基本的に、これは、Installous がインストールされているジェイルブレイクされたデバイスにインストールされます。セットアップ後は、どこからでもインストールできるため、展開が非常に迅速になります。会社の Web サイトにアップロードし、ファイルをデバイスに直接ダウンロードして、コピー/移動するだけです。 ~/Documents/Installous/Downloads.

今後の Xcode 7 では、Apple 開発者ライセンスがなくてもデバイスにアプリをインストールできるようになりました。 スキップ アプリストアにアクセスすれば、デバイスをジェイルブレイクする必要はありません。

今では誰もが自分の Apple デバイスにアプリを入手できるようになりました。

Xcode 7とSwiftにより、誰もがアプリを作成し、Appleデバイスで直接実行しやすくなりました。Apple IDにサインインして、iPad、iPhone、またはApple Watchに触れることができるアプリにアイデアを変えてください。Xcode 7ベータをダウンロードして、今すぐ自分で試してみてください。プログラムのメンバーシップは必要ありません。

引用元: https://developer.apple.com/xcode/

アップデート:

XCode 7 がリリースされました。

無料のオンデバイス開発 これで、誰もがデバイスで自分のアプリを実行してテストできるようになりました。Mac、iPhone、iPad、iPod Touch、またはApple Watchで自分の作品を実行してデバッグすることはできません。必要なのは、無料のApple IDをXcodeに入力することだけです。App StoreやiTunesに既に使用しているのと同じApple IDを使用することもできます。アプリを完成させると、Apple DeveloperプログラムはApp Storeで入手するのに役立ちます。

見る デバイス上でアプリを起動する デバイスへのインストールと実行の詳細については。

ジェイルブレイクのルートを選択した場合、iPhone OS のアップデートによりこれらのアプリを実行できなくなる可能性がある (可能性が高い?) ことに注意してください。私なら正規のルートを選択し、99ドルを払って認可を受けるだろう。アプリが破壊されることを心配する必要がないことに加えて、(選択すれば) アプリをストアにリリースする機会も得られます。

@Jason Weathered が説明した方法でアプリを iPhone にコピーした後、必ずアプリの「chmod +x」を実行してください。そうしないと実行されません。

*これを機能させるための変更/注意事項 Xcode 3.2.1 そして iPhone SDK 3.1.2

WiFi 経由の手動導入

2) Info.plist を変更した後は必ず Xcode を再起動してください。

3) 「uicache」コマンドが見つかりません。killall -HUP SpringBoard を使用するとうまくいきました。

それ以外は、これが正常に動作することを確認できます。

Mac ユーザーは、PwnageTool 3.1.4 を使用すると、ジェイルブレイク (Torrent 経由での DL) にうまく機能しました。

パッチを当てれば /Developer/Platforms/iPhoneOS.platform/Info.plist その後、Apple の実際の開発プロビジョニング プロファイルを使用して、デバイス上で実行されているアプリケーションをデバッグしようとすると、おそらく機能しません。症状としては、奇妙なエラー メッセージが表示されることです。 com.apple.debugserver また、Xcode でビルドするときにエラーが発生することなく、任意のバンドル識別子を使用できることもわかります。解決策は復元することです Info.plist.

使用できます アプリボックス, 他のブラウザからインストールする場合、Dropbox アカウントを使用してアドホック アプリやエンタープライズ アプリを配布する Mac アプリケーション。

https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessインストール/リリース


オプション

IPAのアーカイブとアップロード

  • プロジェクト/ワークスペースを選択するだけで、 アーカイブ -> ipaを作る -> ipaをアップロードする -> メールを送信する -> そして マックをシャットダウンする

IPAのみをアップロードする

  • IPAファイルを選択するだけです ipaをアップロードする -> メールを送信する -> そして マックをシャットダウンする

特徴

  • 同じリンクを維持する
    • この機能は、同じバンドル識別子でアップロードされる今後のすべての ipa に対して同じ短縮 URL を保持します。
    • このオプションを有効にすると、同じ URL で以前のビルドをダウンロードすることもできます。
  • 自動電子メール アプリ配布リンク
  • Macの自動シャットダウン 配信後
  • 最大アップロードサイズ => Dropbox アカウントのストレージと同等
  • アップロードされたアプリの有効期限 => Dropbox から削除するまで
  • アプリごとのインストール数 => 無制限
  • ダッシュボード*

    * 将来のバージョンで利用可能になる予定


AppBox vs Diawi

スクリーンショット

IPAをアップロードする

IPAのアーカイブとアップロード

IPAのアップロード

ここで試してみてください https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessインストール/リリース

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top