US $ 99のApple証明書がなくても、Xcodeから実際のiPhoneデバイスにiPhoneアプリケーションをデプロイするにはどうすればよいですか?
US $ 99のApple証明書がなくても、Xcodeから実際のiPhoneデバイスにiPhoneアプリケーションをデプロイするにはどうすればよいですか?
回答:
アプリケーションが署名されていないようです。Cydiaからldidをダウンロードして、次のように使用します。ldid -S /Applications/AccelerometerGraph.app/AccelerometerGraph
また、バイナリが実行可能としてマークされていることを確認してください: chmod +x /Applications/AccelerometerGraph.app/AccelerometerGraph
:私は2つのHOWTOの混在使用してきたジェイソンさんとアレックスのを。2番目には、デバッグできるという利点があります。私はほとんど両方を以下にコピーします(そしてアレックスを簡素化します):
2012年1月の更新:これはまだSDK 4.2.1およびiOS 5.0.1で動作します-新しいコンピューターとデバイスですべてテストしました!
この証明書の使用を許可するように、iPhone SDKにパッチを適用します。
Keychain Access.appを起動します。アイテムが選択されていない状態で、[キーチェーン]メニューから[証明書アシスタント]、[証明書の作成]の順に選択します。
[続行]をクリックします
[続行]をクリックします
[ メールアドレス]フィールドを空白にします。
完了するまで [ 続行]をクリックしますます。
あなたは、表示されるはずです「このルート証明書が信頼されていません」。これは予想通りです。
自己署名証明書の使用を許可するようにiPhone SDKを設定します。
sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist
Xcodeを開いている場合は、再起動してこの変更を有効にします。
そして、もしあなたがiOS 5を使っているなら、それだけです!やってみよう!デバッグはできないかもしれませんが、アプリはそこにあります!
ご存知のように、私はこれらのハッキングのすべてについて何も知らないので、私はこれに非常に驚きました!指摘したように、他の場所で見つけたものを少し改善するだけでした。
そうです、そうです、方法全体がもう同じように機能せず、私は新しい方法を見つけるのに迷惑をかけることができませんでした... これを除いて、Theosと呼ばれるツールを使用しますが、プロセス全体を実行できませんでした。
最後に、何らかの理由でアンインストールする必要がある場合は、この投稿の最後を確認してください。私の場合、この方法全体が機能しなくなった理由を理解できなかったため、そして長い間待たされていたライセンスをすでに取得しているので、もう気にする必要がなかったので、私はしなければなりませんでした。(DUNS番号のフリーキングには時間がかかります...)
。
。
。
。
。
ジェイルブレイクされたiPhoneに、ソースを追加してApp Syncをインストールします** http://repo.hackyouriphone.org **
コードサインとエンタイトルメントのSDK要件を削除します(私はsedを愛しています!):
sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
iPhoneOS5.0.sdk
パーツに注意してください。たとえばiOS 4.2 SDKを使用している場合は、それに応じて単に置き換えます。
sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
Xcodeにパッチを適用して、要件の削除を完了します。これはバイナリ編集を意味します:
cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
printf "\xc3\x26\x00\x00" >> working
/bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
/bin/mv working iPhoneOS\ Build\ System\ Support
chmod a+x iPhoneOS\ Build\ System\ Support
Xcodeを開いている場合は、Xcodeを再起動して、この変更(および最後の変更)を有効にします。
メニューから[プロジェクト]> [プロジェクト設定の編集]を開きます。「ビルド」タブをクリックします。検索「コードはアイデンティティの署名」とその子「どれiPhoneOSデバイスを」リストで、エントリの両方に設定「しないコードサイン」:
この後、ステップ3を元に戻してください。少なくとも私の場合は、問題なく動作しました。
Xcodeをカスタム署名の自己署名証明書(最初のハウツー)でコード署名に設定します。デバッグできないようにする場合は、この手順をスキップできます。
mkdir /Developer/iphoneentitlements401
cd /Developer/iphoneentitlements401
curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
mv gen_entitlements.txt gen_entitlements.py
chmod 777 gen_entitlements.py
iPhoneを接続してXcodeを開きます。Window> Organizerを開きます。左側のリストからデバイスを選択し、[開発に使用]をクリックします。プロビジョニングWebサイトのログインを求められます。[キャンセル]をクリックします。これは、正当なプロビジョニングを容易にするためにありますが、非正規のプロビジョニングを難しくしません。
今、あなたはあなたが作るすべての新しいプロジェクトのためにこの最後の部分をしなければなりません。[プロジェクト]> [新しいビルドフェーズ]> [新しい実行スクリプトビルドフェーズ]に移動します。ウィンドウに、これをコピーして貼り付けます。
export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
/Developer/iphoneentitlements401/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi
。
。
。
。
前編:
sudo mv -f /Developer/Platforms/iPhoneOS.platform/Info.plist.bak /Developer/Platforms/iPhoneOS.platform/Info.plist
後編:
sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
sudo mv -f iPhoneOS\ Build\ System\ Support.original iPhoneOS\ Build\ System\ Support
2の代わりにステップ3を実行した場合は、それに応じて次のように変更します。
sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
残りは、XCodeで行ったことを元に戻し、必要に応じて削除/Developer/iphoneentitlements401/gen_entitlements.py
するだけです。
sudo rm -f /Developer/iphoneentitlements401/gen_entitlements.py
The identity used to sign the executable is no longer valid. ... (0xE8008018)
3650日を期限切れにしても 電話自体がチェックを行っているようです。
Apple Developer料金(またはデバイスの脱獄)を支払うのではなく、実際のデバイスでアプリをテストするために、Xcode 7およびiOS 9がサポートする新しい無料のプロビジョニングを使用できます。
ドキュメントから多かれ少なかれ取られたステップはここにあります(これはかなり良いので、読んでください):
1. Apple IDをXcodeに追加します
[XCode]> [設定]> [アカウント]タブ> [追加]ボタン(+)> [Apple IDを追加]に移動します。詳しくはドキュメントをご覧ください。
2.プロジェクトナビゲーターの[全般]タブをクリックします。
3.チームポップアップメニューからApple IDを選択します。
4.デバイスを接続し、スキームメニューで選択します。
5. [問題の修正]ボタンをクリックします
バンドル名が無効であるというエラーが発生した場合は、一意の名前に変更してください。
6.アプリを実行する
Xcodeで、[ビルドして実行]ボタンをクリックします。
7.デバイス設定でアプリ開発者を信頼する
アプリを実行した後、実行するアプリがApp Storeからのものではないため、セキュリティエラーが発生します。
あなたには、デバイス、設定>一般>プロファイル>に行き、あなたのアップル-ID-名 >トラストあなたのアップル-ID-名 >トラスト。
8.デバイスでアプリを再度実行します。
それでおしまい。これで、99ドルを無駄にすることなく、独自の(またはソースコードを持っている他のアプリ)を実行できます。最後にこれを許可してくれたAppleに感謝します。
アップルに支払うことなくiPhoneアプリを展開する方法がありますあなたはあなたのデバイスを脱獄し、http://www.alexwhittemore.com/?p = 398の指示に従う必要があります
私がどこでも見たことはありませんが、証明書(有料)なしで実際のiPhoneにアドホック展開できることを示しています。
私は昨晩Apple Developerを通過していましたが、プロビジョニング証明書に「Signing Team Members」のようなものが見つかりました。チームメンバーを有料プロフィールに追加する方法はあると思います。アプリIDの所有者(有料のもの)にチームメンバーとして追加するよう依頼するだけです。私はわかりません。まだそれを探しています。
いいえ、これを行うのは簡単です。Xcodeで、アクティブ構成をリリースに設定します。デバイスをシミュレーターからデバイス-SDKに変更します。iPhoneに直接エクスポートする場合は、コンピューターに接続します。Build and Goを押します。iPhoneがコンピュータに接続されていない場合、iPhoneが接続されていないというメッセージが表示されます。
これが当てはまる場合:(iPhoneは接続されていませんでした)
プロジェクトフォルダーに移動してから、内部のビルドフォルダーに移動します。Release-iphoneosフォルダーに移動し、アプリを中に入れ、iTunesアイコンにドラッグアンドドロップします。iTouchデバイスを同期すると、デバイスにコピーされます。また、iPhoneのアプリケーションとしてiTunesに表示されます。
お役に立てれば!
PS:証明書が有効ではないというメッセージが表示された場合は、Xcodeのプロジェクト、左側のファイルスタックにある小さなプロジェクトアイコンをクリックし、Apple + Iを押すか、メニューバーから[情報を見る]を実行してください。上部にある[ビルド]をクリックします。[コード署名]で、[コード署名ID-すべてのiPhone OSデバイスを署名しない]に変更します。
回避策はありません。アプリがデバイスに登録されている場合のみ、アドホック展開アプリを使用できます。これにより、独自のアプリストアを構築できなくなります。