IOS 8 Today widget does not appear when starting a project

I have an application with two goals and a widget has been added today. When I launch it, it does not appear in today's “Edit / in” notifications in the “Do Not Include” section, where it usually appears for the first time with my other applications. Any idea what could go wrong? I get the right to no warning for the extension, but I get it for those that work too (tried adding one, didn't help).

Also, if I try to connect it as a process in the debug menu, it does not appear at all /

I tried to remove the application from the simulator and restart, etc., I tried with another application that has several goals, since I thought this might be a problem, but the other one works.

Does anyone have a similar experience or can offer something?

Edit 6 Oct 2014: I still have not found a solution, but arm64 is not used in my project. Could this be a problem? I tried to remove arm64 from other projects, but I think Xcode 6 does not allow this, so I can not test it, does anyone know if this is possible?

+6
source share
4 answers

In my case, the reason the widget does not appear in the widget list was because the deployment target was too high. For the widget, I had 9.0. However, I downgraded my iPhone from 9.0 to 8.4 and forgot to change it for the widget.

After changing 8.4, the widget immediately appeared on the iPhone.

+25
source

I saw this problem when there is a mismatch in the bundleID between the application and the extension.

Example (correct):

App bundleid: com.yourcompany.myapp

Ext bundleid: com.yourcompany.myapp.myextension

The extension must have the entire bundleID of the application, followed by its own name.

+3
source

Make sure you are using the containing application and not the extension in the simulator.

+3
source

Make sure that :

  • "Deployment target" is the same as the application (@vomako answer);
  • The package ID matches the correct format: "com.yourcompany.myapp.myextension" and your application is "com.yourcompany.myapp" (@RohitGupta answer);
  • During debugging, you need to run the widget / extension scheme (there is no application scheme here. But if the archive is sent to the App Store, use the application scheme);
  • "Build Settings" "WRAPPER_EXTENSION" - " call ".

Point 4 was not mentioned in all answers (even in the official document), but it happened in my case.

I created Today Widget for my existing project in the workspace, but it doesn’t work at all. However, when I create a clean new project with Today Widget, it works well. Then I compare Build Build one by one and find this difference: the one that was created for my existing project is an “application” and not an “appeal”.

After you change it to "appx", it works.


In addition, as tips to get through the Application Overview, you should :

  • Turn on arm64 (iOS) or x86_64 (MacOS) architecture in widget / extension layout settings.
  • Specify "iPhone / iPad" (sometimes referred to as universal) as the target device family to expand your application, regardless of which target device family you choose for your containing application;
  • An application related to the embedded infrastructure should include the installation of architecture architecture arm64 (iOS) or x86_64 (OS X);
  • Always select "Frames" as the destination for the build phase of the copy files (do not select "SharedFramework" instead).
0
source

Source: https://habr.com/ru/post/975960/


All Articles