5

当社の営業チームは、現在開発中のアプリのデモを提供する必要があることがよくあります。ラップトップにインストールするためにさまざまな方法を使用しましたが、すべて手作業でした。

私たちが使用していた最初の方法では、ソース コードをダウンロードし、セールスマンごとにすべてのプロジェクトをコンパイルしていました。非常に時間がかかり、面倒です。

その後、少し賢くなって、iOS シミュレーターのアプリケーション フォルダーをコピーし、各セールスマンのラップトップの iOS シミュレーターのアプリケーション フォルダーにコピーできることに気付きました。はるかに優れていますが、それでも各ラップトップにコピーする手動の部分です。

そこで、Mac のフォルダー同期オプションについていろいろと調べてみたところ、この手法に出くわしましたhttp://www.youtube.com/watch?v=iWoXPWlu_Dk

非常に素晴らしく、私のニーズを正確に満たしていたようです。新しい iOS アプリケーションを投入できる中心的な共有フォルダが 1 つあります。セールスマンのラップトップは自動的にそのアプリケーション フォルダと同期し、ラップトップをここに置く必要なく、新しいアプリが表示されます。

残念ながら、シンボリック リンクまたはエイリアスの場合、iOS シミュレーターは Applications フォルダーを認識していないようです。これを機能させる Mac の魔法はありますか? (私は通常、Windows の男で、最近 iOS の世界で働いているので、ここで欠けている基本的なものがある可能性があります)。

Applications フォルダー /Application Support/iPhone Simulator/5.1/Applications を共有フォルダーにして、自動的に同期し、デモの準備ができている新しいアプリケーションを取得します (古いアプリケーションの更新を取得します)。初期のビルドを取得するためのスムーズな方法のように思えます。

実際のデバイスには TestFlight などのサービスを使用しており、これは優れたオプションですが、手元にデバイスがない場合や、ラップトップでデモをブラストするだけの場合は、維持するための簡単なプロセスが必要です。シミュレータをインストールするための新しいビルドで最新の状態にします。

4

2 に答える 2

2

最初に少し背景を説明します。これは実際には必要ありませんが、教えるのが好きです :)。

Unix と現在の MacOS には、基本的に 2 種類のリンクがあります。「通常の」リンク、およびシンボリック リンク。エイリアスは、Windows、Unix、および Mac では一種のシンボリック リンクです。リンクには、元のファイルへの参照が含まれています。通常のリンクまたはハード リンクは、データを指す 2 番目のディレクトリ エントリを作成します。元のファイルを削除すると、OS はそれを指す別のエントリがまだあることを認識します。リンクは削除されました。ハード リンクの欠点は、ファイル システムがハード リンクの数を数え続けることができるように、同じファイル システム上になければならないことです。

OK、Dropbox をインストールしたところです。ユーザーのホーム ディレクトリに実際のフォルダが作成されるようです。複雑なディスク パーティション スキームや、ユーザーのホーム ディレクトリが実際には暗号化されたディスクであるファイル ボルト 1 でない限り、画像、ハードリンクを使用できます。また、Dropbox が既に行っているため、コピーや同期を行う必要がないことも意味します。

修正されていないが、実際には指摘されていないことの 1 つは、あなたの投稿では、または/Application Supportではなくにコピーしているように見えることです。ドロップボックスなしで基本的なスキームが機能するようになったので、それはタイプミスだと思います。~/Library/Application Support/Library/Application Support

rmコマンドを使用する前に、コマンドを使用する代わりに、古い iPhone Simulator Applications ディレクトリを Finder で削除することをお勧めしますrm。コマンドは非常に破壊的である可能性があるためです。

OK、最後に、リンクを行うコマンドです。ファイル名にスペースが含まれている場合は常に引用符が重要です。この例は ~/Library 用です

rm  -rf "~/Library/Application Support/iPhone Simulator/5.1/Applications"

ln "~/Dropbox/Simulator Applications" "~/Library/Application Support/iPhone Simulator/5.1/Applications"

これでうまくいくはずです。今すぐ読むのをやめてください。残りは単なる教育です:)

チルダ ( ~) は、ユーザーのホーム ディレクトリのショートカットです。/Library代わりに、これなしでコマンドを使用して作業してください。

正確なパスを取得したい場合は、ファイルとフォルダーをファインダー ウィンドウからターミナルにドラッグすると、ファイルの代わりにパスが貼り付けられます。

ルート ファイルシステムをいじっている場合は、スーパーユーザー権限が必要になる場合があります。管理者アカウントでログインしている場合は、次のようにスーパーユーザー アクセスで単一のコマンドを実行できます。

sudo ln  "/Library/Application Support/iPhone Simulator" fred

シェルはパスワードを要求しスーパーユーザーとしてコマンドを実行します。 sudoは認証を数分間記憶します。その後、再度認証する必要があります。

于 2012-08-14T09:48:01.130 に答える
2

Mac が 1 台しかないため、これをテストしていませんが、試してみてください。

  1. ドロップボックスをインストール
  2. そこに共有フォルダーを作成し、/Users/USERNAME/Library/Application Support/iPhone Simulator/5.1/Applications からアプリをコピーします。
  3. それらをシミュレーターの場所にコピーして戻すシェル スクリプトを作成し、それを共有フォルダーに追加します。次のようになります。

    #!/bin/sh
    
    cp -R ~/Dropbox/Appfolder/appname ~/Library/Application Support/iPhone Simulator/5.1/Applications/
    
  4. ユーザーにドロップボックスを同期させてファイルを取得してから、シェル スクリプトを実行してファイルをコピーします。

于 2012-08-14T01:52:59.917 に答える