2016-06-23 1 views
1

Le portefeuille Apple est réglé sur la luminosité maximale lorsque l'application est sur le premier plan. Lorsque l'application passe en arrière-plan ou se termine, elle se réinitialise en tant que luminosité normale.Puis-je mettre en œuvre la fonctionnalité de luminosité comme Apple App portefeuille?

Je veux implémenter la même fonctionnalité avec mon application.

J'essaye avec [[UIScreen mainScreen] setBrightness:1.0]; Les changements de luminosité effectués par une application restent en vigueur jusqu'à ce que l'appareil soit verrouillé.

Je souhaite régler la luminosité maximale si mon application est en mode d'avant-plan, sinon la luminosité reviendra au niveau de luminosité précédent.

+0

Je ne vois pas un problème que vous avez. Pourriez-vous décrire votre problème plus en détail? – vrwim

+0

vérifiez que je mets à jour la question et vous pouvez vérifier dans l'application de portefeuille aussi. il a déjà cette fonctionnalité. – Shreyank

+0

Je pense que je comprends, vous voulez que la luminosité à réinitialiser lorsque vous fermez votre application, ce qui n'est pas le comportement actuel. – vrwim

Répondre

2

TOUT CELA EST-ENFIN FONCTIONNE PAS, VOIR EDIT

Si ce que vous faites est réglage de la luminosité élevée lors de l'ouverture de votre application, puis restaurer la luminosité précédente quand elles existent, voici ce que vous pouvez faire dans AppDelegate:

Ajouter un CGFloat previousBrightness

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  
    previousBrightness = [[UIScreen mainScreen] brightness]; 

    [[UIScreen mainScreen] setBrightness:1.0]; 

    return YES; 
} 

Et

- (void)applicationDidEnterBackground:(UIApplication *)application { 
    [[UIScreen mainScreen] setBrightness:previousBrightness]; 
} 

Edit:

Après quelques recherches, je trouve que il y a en fait un bug dans iOS qui vous empêchent de changer la luminosité après la sortie d'une application. Le bogue a été signalé depuis iOS 4 et ne semble pas résolu car j'ai essayé sur iOS 8 et cela ne fonctionne toujours pas ...

Veuillez voir this thread on Apple Dev Forum pour plus d'informations sur le bogue. La seule chose que vous pouvez faire est de régler la luminosité complète pour la seule étape dont vous avez besoin, et réinitialiser juste quand l'utilisateur n'en a plus besoin. Par exemple dans de nombreuses applications, nous avons une luminosité totale lors de l'affichage de QR-Code, puis il revient à la luminosité précédente en cliquant sur la croix «X» pour sortir.

Vous devrez peut-être repenser votre application à certains égards, mais vous n'aurez pas la possibilité de restaurer la luminosité après que l'utilisateur a cliqué sur le bouton Accueil.

+1

Était en train d'écrire cette réponse :) – vrwim

+0

Je l'ai déjà essayé avant de poster une question. Ce n'était pas le cas lorsque l'application est en arrière-plan. oui cela fonctionne quand l'application se termine. – Shreyank

+1

Après avoir essayé, j'ai trouvé avec surprise que cela ne fonctionne pas, s'il vous plaît voir mon édition. – AnthoPak