2014-09-28 15 views
6

Tôi có một ứng dụng với 2 mục tiêu và thêm tiện ích ngày hôm nay. Khi tôi chạy nó, nó không xuất hiện trên các thông báo ngày hôm nay Edit/trong phần "Không bao gồm", nơi nó thường xuất hiện lần đầu tiên với các ứng dụng khác của tôi. Bất kỳ ý tưởng những gì có thể đi sai? Tôi nhận được các quyền lợi bị thiếu cảnh báo cho phần mở rộng nhưng tôi nhận được điều này cho những người mà làm việc quá (đã cố gắng thêm một, không giúp đỡ).iOS 8 Widget ngày nay không xuất hiện khi chạy dự án

Ngoài ra nếu tôi cố gắng đính kèm nó như một quá trình dưới menu debug, nó không xuất hiện ở đó ở tất cả/

Tôi đã cố gắng xóa ứng dụng từ mô phỏng và thiết lập lại vv, tôi đã thử với một ứng dụng có nhiều mục tiêu như tôi nghĩ rằng đây có thể là vấn đề nhưng một trong những công trình khác.

Bất kỳ ai khác có trải nghiệm tương tự hoặc có thể đề xuất bất cứ điều gì?

Chỉnh sửa ngày 6 tháng 10 năm 2014: Tôi vẫn chưa tìm thấy giải pháp, nhưng dự án của tôi không sử dụng arm64. Đây có phải là vấn đề không? tôi đã cố gắng loại bỏ arm64 từ các dự án khác nhưng tôi nghĩ Xcode 6 không cho phép nó vì vậy tôi không thể kiểm tra nó, không ai biết nếu điều này là một khả năng?

+2

Tôi nghĩ rằng (thiếu arm64) là vấn đề - không thể nhớ nơi tôi đọc nó mặc dù. – siburb

+0

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

Trả lời

3

Tôi đã thấy sự cố này khi có sự không khớp trong bundleID giữa ứng dụng và tiện ích.

Ví dụ (đúng):

App bundleid: com.yourcompany.myapp

Ext bundleid: com.yourcompany.myapp.myextension

Phần mở rộng cần phải có toàn bộ bundleID của ứng dụng , theo sau là tên riêng của nó.

25

Trong trường hợp của tôi, lý do cho tiện ích không được hiển thị trong danh sách tiện ích là số mục tiêu triển khai quá cao. Đối với các widget, tôi đã có 9,0. Tuy nhiên, tôi đã hạ cấp iPhone từ 9,0 xuống 8,4 và quên thay đổi nó cho tiện ích.

Sau khi thay đổi thành 8.4, tiện ích ngay lập tức xuất hiện trên iPhone.

+0

Đây là vấn đề cơ bản của tôi, nhưng với một twist. Tôi đã đặt ứng dụng chính của mình thành mục tiêu triển khai là 8.2 nhưng tiện ích con, theo mặc định, được đặt ở dạng 9.x (không nhớ phiên bản phụ). Vì tôi đã thử nghiệm trong bộ mô phỏng 8.4, tiện ích không xuất hiện. Quan điểm của tôi, là tôi giả định rằng các widget sẽ có cùng một mục tiêu triển khai như là ứng dụng chính. Nó đã không làm. – ghostatron

3

Đảm bảo bạn đang chạy ứng dụng có chứa chứ không phải tiện ích trong trình mô phỏng.

0

Hãy chắc chắn rằng:

  1. "Triển khai mục tiêu" là như nhau để chứa ứng dụng của (@vomako 's câu trả lời);
  2. ID gói tuân theo định dạng đúng: "com.yourcompany.myapp.myextension", trong khi ứng dụng có chứa của bạn là "com.yourcompany.myapp" (@RohitGupta 's answer);
  3. Khi gỡ lỗi, bạn cần chạy sơ đồ tiện ích/tiện ích mở rộng (không chứa sơ đồ ứng dụng tại đây. Nhưng nếu lưu trữ để gửi tới App Store, hãy sử dụng sơ đồ ứng dụng);
  4. "WRAPPER_EXTENSION" của "Cài đặt xây dựng" là "appex".

Điểm 4 không được đề cập trong tất cả các câu trả lời (ngay cả tài liệu chính thức), nhưng đã xảy ra trong trường hợp của tôi.

Tôi đã tạo Widget hôm nay cho dự án hiện tại của mình trong không gian làm việc, không hoạt động chút nào. Tuy nhiên, khi tôi tạo dự án mới thuần túy với Today Widget, nó hoạt động tốt. Sau đó, tôi so sánh từng phần Xây dựng và tìm thấy sự khác biệt này: Cái được tạo cho dự án hiện tại của tôi là "ứng dụng" chứ không phải "appex".

Sau khi thay đổi thành "appex", hoạt động.


Ngoài ra, như lời khuyên, để thông qua App Review, bạn phải:

  • Bao gồm arm64 (iOS) hoặc kiến ​​trúc x86_64 (MacOS) trong widget/Kiến trúc mở rộng của xây dựng các thiết lập ;
  • Chỉ định "iPhone/iPad" (đôi khi được gọi là phổ dụng) làm gia đình thiết bị được nhắm mục tiêu cho tiện ích mở rộng ứng dụng của bạn, cho dù bạn chọn loại thiết bị được nhắm mục tiêu nào cho ứng dụng có chứa của bạn;
  • Ứng dụng có chứa liên kết đến khung được nhúng phải bao gồm cài đặt xây dựng kiến ​​trúc arm64 (iOS) hoặc x86_64 (OS X);
  • Luôn chọn “Khung” làm điểm đến giai đoạn xây dựng Sao chép tệp của bạn (thay vào đó không chọn đích “SharedFramework”).
Các vấn đề liên quan