2012-10-10 4 views
10

Linea semplice di codice:isAvailableForServiceType restituisce sempre true?

NSLog(@"Checking on Facebook: %d -- Checking on Twitter: %d",[SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook], [SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]); 

Il problema è che sto ricevendo 1 per entrambi i BOOL. Questo è un problema perché né Twitter né Facebook sono impostati con un account. Questo è sul simulatore, quindi chiedersi se le persone hanno provato che questo sta accadendo anche sui dispositivi?

La documentazione dice che dovrebbe restituire true solo se il servizio è disponibile e almeno un account è impostato. Ma sto diventando vero anche senza l'impostazione degli account. Mi piacerebbe usare i valori per nascondere alcuni pulsanti di social posting, quindi vorrei che funzionasse.

+0

Lo hai mai capito? Neanche funziona correttamente sui miei dispositivi iOS 6. – adamdehaven

risposta

17

Hai eseguito quella in Simulator?

Sembra che isAvailableForServiceType restituisca sempre 1 in Simulatore.

Forse è possibile testarlo in ipad con IOS6.

+0

Sì, solo simulatore (sebbene non avessi account impostati sul simulatore). Proverò sul dispositivo stesso, solo deludente per avere un altro simulatore/differenza HW. –

+0

Qualche idea su come ottenere il comportamento previsto sul simulatore? – Norswap

4

Dalla mia esperienza, posso confermare che si tratta di un bug in iOS Simulator 6.0. Il metodo isAvailableForServiceType restituisce sempre TRUE per qualsiasi tipo di servizio su iOS Simulator.

Sul dispositivo corrente con iOS 6.0 corrente funziona come previsto.

0

Posso anche confermare che è rotto [vale a dire, restituisce True per tutti e tre i servizi] nel Simulatore (Xcode 4.5.1, iOS 6.0) - ma funziona correttamente su un dispositivo (iPhone 4S, con iOS in esecuzione 6.0).

0

isAvailableForServiceType restituisce true sempre in entrambi i simulatori iPhone e iPad.

Lo stesso codice funziona perfettamente con iOS 6 iPhone e iPad.

1

è possibile testare isAvailableForServiceType: utilizzando iOS 7.1 su cui sta lavorando anche con il simulatore.

Ecco cosa ho controllato

NSLog(@"Facebook Enabled : %d",[SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]; 

Si prega di controllare questo.