2013-02-26 9 views
9

Chciałbym rozpowszechniać moje wersje beta Adhoc na własnym serwerze. Wygląda na to, że 2 ważne adresy URL w logice firmy Apple używają do instalowania aplikacji bezprzewodowo.Budowanie Adhoc w systemie Air iOS przy użyciu względnego adresu URL

Pierwszy url jest w HTML:

<p><a href="itms-services://?action=download-manifest&url=http://www.example.com.cn/path/to/plist/theplist.plist">Adhoc Build</a></p> 

Drugi znajduje się wewnątrz tego pliku plist

<dict> 
    <key>kind</key> 
    <string>software-package</string> 
    <key>url</key> 
    <string>http://www.example.com.cn/path/to/binary/app.ipa</string> 
</dict> 

Czy te adresy względne? Chciałbym, aby te same pliki HTML i XML działały na obu komputerach programistycznych (serwer MAMP), najpierw testując, czy mogę pobrać plik binarny, a następnie opublikować kompilację adhoc do moich testerów na moim serwerze sieciowym (NGINX). Obecnie mogę go uruchomić tylko z bezwzględnym adresem URL.

Moja myśl jest, że te dwa Względne adresy URL powinny działać

<p><a href="itms-services://?action=download-manifest&url=/path/to/plist/theplist.plist">Adhoc Build</a></p> 

i

<dict> 
    <key>kind</key> 
    <string>software-package</string> 
    <key>url</key> 
    <string>/path/to/binary/app.ipa</string> 
</dict> 

Kiedy używać tych względnych adresów URL dostaję okienko z urządzenia po kliknięciu mówiąc: „Nie można połączyć się (null) "

Odpowiedz

7

W przypadku żądań HTTP lub HTTPS względny adres URL może zostać przetworzony przez przeglądarkę internetową w celu uzupełnienia brakujących danych. Łącze do pliku .plist to niestandardowy schemat URL. Safari nie zna formatu adresu URL, więc nie zawiera żadnych brakujących szczegółów. Więc ten link musi być bezwzględnym adresem URL. Safari szuka czegoś, co poradzi sobie ze schematem URL usług itms i wyśle ​​cały URL do tego schematu.

Łącze do pliku .ipa również musi być bezwzględne, nie dlatego, że program obsługujący schemat adresów URL usług itms nie ma wystarczających informacji, ale ponieważ ten program nie uruchamia wbudowanej logiki do przetwarzania Adresy URL. Domyślam się, że Apple woli zachować ten kod jako prosty i niezawodny, zamiast dodawać funkcję względnego adresu URL.

Jednym z rozwiązań jest napisanie jakiegoś procesora po stronie serwera plików HTML i PLIST w celu utworzenia przepisanych plików z bezwzględnymi adresami URL na podstawie serwera. Sposób, w jaki zdecydujesz się to zrobić, zależy od konfiguracji twoich serwerów.

Innym rozwiązaniem jest zachowanie .plist i .ipa na głównym serwerze internetowym, używanie bezwzględnych adresów URL do tego serwera i praca z plikiem HTML na obu serwerach.

Powiązane problemy