Den første brugerdefinerede widget lavet til Notifications Center fra iOS 5

Jeg fortalte dig for en time siden, at det teoretisk ville være muligt at udvikle widgets til iOS 5, selv uden programmer, der stilles til rådighed af Apple, og nu har vi det første bevis på, at widgets til Notifications Center kan gøres meget nemt. Hello World er teksten, der vises af den første widget lavet til meddelelsescenteret og er blot et bevis på, at vi gennem Cydia vil være i stand til at installere widgets til visse applikationer, selvom Apple ikke tillader dette.

Apple har ikke officielt annonceret, at de vil tilbyde udviklere af iOS-applikations-API'er at tillade udvikling af widgets til deres egne applikationer, men i sidste ende er det måske ikke nødvendigt. Vi har allerede demonstreret det faktum, at widgets vil være til stede i meddelelsescenteret, men Apple kan implementere nogle officielle API'er, der vil give enhver udviklere mulighed for at lave sådanne widgets, og dermed ville vi have mange flere applikationer, der ville have denne funktion inkluderet. Indtil en anden her du har den nødvendige dokumentation for at lære at lave widgets til applikationer.

Tilpassede meddelelsescenterwidgets (WeeApps) af @WillFour20

Dette er et meget blottet eksempel på, hvordan man tilføjer en brugerdefineret widget til iOS 5-meddelelsescenteret.

Det eneste, det i virkeligheden gør, er at sige 'Hello World' for nu.

Det er ret nemt at forstå, du opretter en klasse, der implementerer BBWeeAppController-protokollen. Den eneste nødvendige funktion, du skal have, er '- (UIView *)view', hvor du skal returnere den visning, du vil have vist. Der er også andre metoder i protokollen til at starte URL'er, når der trykkes på dem, og til rotationsdetektering, visningshøjde osv.

Jeg ved endnu ikke, hvordan jeg angiver navnet i Settings.app, men det ser ud til, at det viste ikon er indstillet ved at indstille app-id'et i Info.plist for appen, hvilket ikon du ønsker. (f.eks. for at få din brugerdefinerede widget til at få Safari-ikonet til at indstille 'AppBundleID' i Info.plist til 'com.apple.mobilesafari')

Brugerdefinerede bundter placeres i /System/Library/WeeAppPlugins/

Dette er et ret lorte eksempel, men jeg er sikker på, at der kan komme nogle gode ting ud af det her.

Problemer:

Dette vises ikke korrekt i Settings.app, det vises uden et navn og et rodet ikon.