2014-09-28 14 views
6

Mam aplikację z 2 celami i dodano widżet dzisiaj. Po uruchomieniu nie pojawia się w dzisiejszych powiadomieniach Edytuj/w sekcji "Nie zamieszczaj", gdzie zwykle pojawia się za pierwszym razem z innymi aplikacjami. Masz pojęcie, co może być nie tak? Dostaję uprawnienia brakujące ostrzeżenie dla rozszerzenia, ale dostaję to dla tych, którzy pracują również (próbowałem dodając jeden, nie pomaga).iOS 8 Widżet Today nie pojawia się podczas uruchamiania projektu

Także jeśli próbuję dołączyć go jako proces w menu debugowania, nie pojawiają się tam w ogóle/

próbowałem usuwanie aplikacji z symulatora i resetowania itp Próbowałem z innej aplikacji, która ma wiele cele, ponieważ myślałem, że to może być problem, ale drugi działa.

Ktoś jeszcze ma podobne doświadczenia lub coś może sugerować?

Edytuj 6 października 2014: Wciąż nie znalazłem rozwiązania, ale mój projekt nie używa arm64. Czy to może być problem? Próbowałem usunąć arm64 z innych projektów, ale myślę, że Xcode 6 nie pozwala na to, więc nie mogę go przetestować, czy ktoś wie, czy jest to możliwe?

+2

Myślę, że (brak arm64) jest problemem - nie pamiętam, gdzie go czytałem. – siburb

+0

http://stackoverflow.com/questions/26236333/ios-today-extension-do-not-launch-lost-connection-to-device/26238356#26238356 – Mathieu

Odpowiedz

3

Widziałem ten problem, gdy występuje niezgodność w pakunku między aplikacją a rozszerzeniem.

Przykład (Correct)

aplikacji bundleid: com.yourcompany.myapp

Ext bundleid: com.yourcompany.myapp.myextension

rozszerzenie musi mieć całą bundleID app , a następnie jego własną nazwę.

25

W moim przypadku przyczyną braku widżetu widniejącego na liście widgetów był zbyt wysoki numer docelowy wdrożenia. Dla widżetu miałem 9.0. Jednak zmniejszyłem mój iPhone od 9.0 do 8.4 i zapomniałem go zmienić na widżet.

Po zmianie na 8.4, widget pojawił się natychmiast na iPhonie.

+0

To był w zasadzie mój problem, ale z niespodzianką. Moja główna aplikacja została ustawiona na docelową instalację na 8,2, ale widżet domyślnie pojawił się jako 9.x (nie pamiętam wersji dodatkowej). Ponieważ testowałem w symulatorze 8.4, widżet się nie pojawił. Chodzi mi o to, zakładam, że widget będzie miał taki sam cel wdrożenia, jak główna aplikacja. To nie mialo miejsca. – ghostatron

3

Upewnij się, że korzystasz z aplikacji zawierającej, a nie z rozszerzenia w symulatorze.

0

Upewnij:

  1. "docelowa Deployment" to samo zawierający aplikacji (@vomako „s odpowiedź);
  2. Identyfikator pakietu jest zgodny z poprawnym formatem: "com.yourcompany.myapp.myextension", a aplikacją zawierającą jest "com.yourcompany.myapp" (@RohitGupta - odpowiedź:);
  3. Podczas debugowania należy uruchomić schemat widgetów/rozszerzeń (niezawierający tutaj schematu aplikacji, ale jeśli archiwum ma zostać przesłane do App Store, należy użyć schematu aplikacji);
  4. "Ustawienia konstrukcyjne" "WRAPPER_EXTENSION" to "appex".

Punkt 4 nie został wymieniony we wszystkich odpowiedziach (nawet oficjalny dokument), ale zdarzył się w moim przypadku.

Stworzyłem Widget Dzisiaj dla mojego istniejącego projektu w obszarze roboczym, nie działa w ogóle. Jednak kiedy tworzę czysty nowy projekt z Today Widget, to działa dobrze. Następnie porównuję ustawienie Build po kolei i stwierdzam tę różnicę: ta stworzona dla mojego istniejącego projektu to "app", a nie "appex".

Po zmianie na "appex" działa.


Ponadto, jako wskazówek, aby przejść App Review, musisz:

  • Dołącz arm64 (iOS) lub architektury x86_64 (MacOS) w widgecie/Architektury przedłużenie za budować ustawienia ;
  • Określić "iPhone/iPad" (czasami nazywane uniwersalnym) jako docelową rodzinę urządzeń dla rozszerzenia aplikacji, bez względu na to, którą docelową rodzinę urządzeń wybierze się dla aplikacji zawierającej;
  • Aplikacja zawierająca link do osadzonego środowiska musi zawierać ustawienia kompilacji architektury arm64 (iOS) lub x86_64 (OS X);
  • Zawsze wybieraj "Frameworki" jako miejsce docelowe tworzenia plików kopii (nie wybieraj miejsca docelowego "SharedFramework").
Powiązane problemy