2

マニフェスト リンクからエンタープライズ アプリをデプロイするときに、「アプリケーション URL:」フィールドのどの文字が OTA インストールのトリガーをまったく防止するかを実験してきました。

パスを自動的に生成しようとしていますが、ファイル名に特殊文字が含まれているのはよくあることで、URL の特定の文字がマニフェストによるインストールのトリガーをまったく妨げているように見えます。

たとえば、スペース文字がある場合、%20 でエスケープして、アプリケーション URL に %20 を入れることはできません。これが行われた場合、エラーはスローされず、itms-services://?action=download-manifest&url= アクションはメッセージなしで単に失敗します。

たとえば、アプリの pList があるアプリケーション URL が http://mydomain.com/my-app.ipaの場合

マニフェスト ファイルへのインストール リンクは次のようになります: itms-services://?action=download-manifest&url=http://mydomain.com/my-app.plist

my-app.pList 内には、次のエントリがあります: url http://mydomain.com/my-app.ipa

ただし、- がスペースに置き換えられた場合、ipa の「アプリケーション URL:」および pList でそれを使用して ipa を作成したとしても、アプリケーション URL でスペース文字またはエスケープされた %20 を使用することはできません。

  1. これを回避する既知の方法はありますか?
  2. URL で使用すると OTA インストールを中断する既知の文字のリストはありますか?

前もって感謝します。

4

2 に答える 2

1

ここで答えたように、最も簡単な解決策は、スペースを「+」(プラス) に置き換えることです。これは、...url=... がクエリ文字列パラメーターであることを意味し、URL のエンコード時にフォーム データ パラメーターとしてエンコードされることを意味します。

ここからW3.org - Forms in HTML documents :

「コントロールの名前と値はエスケープされます。スペース文字は「+」に置き換えられ、[RFC1738] で説明されているように予約文字がエスケープされます」

于 2013-03-15T15:42:53.337 に答える