Sparkcore Xmas tree star (3 / 5 steg)
Steg 3: Remote
Sedan utvecklas app på fjärrkontrollen enheten. Soloely med delar av koden som presenteras här.
I ett försök att begränsa funktionaliteten på vissa typer av enheter beslutat jag att begränsa min app för att endast rosa iPod.
…
UIDevice * enhet = [UIDevice currentDevice];
SEL selector = NSSelectorFromString ()
om (! [ enhet respondsToSelector:selector]) {
Selector = NSSelectorFromString ()
}
om ([enhet respondsToSelector:selector]) {
NSCharacterSet * cs = [[NSCharacterSet lowercaseLetterCharacterSet] invertedSet];
NSString * deviceColor = [[enhet performSelector:selector withObject:
NSString * deviceEnclosureColor = [[enhet performSelector:selector withObject:
NSLog (% @ deviceEnclosureColor: % deviceColor, deviceEnclosureColor);
om ([deviceColor isEqualToString: & & [deviceEnclosureColor isEqualToString:
{
returnera Ja;
}
}
…
Vid vissa tidpunkter i livet bör färger vara användbart.
Jag skapade då gränssnittet för att ställa in alla färger. Jag hittade en liten ram, där vanliga dansen med NSURL var redan gjort och genomfört dessa två metoder:
-(void) sendRequestforFunction: (NSString *) theFunction < br > withParameter:(NSString *) parameter
{
SparkTransactionPost * postTransaction = [[SparkTransactionPost alloc]
initWithAccessToken:ACCESS_TOKEN
deviceId:DEVICE_ID
functionName:theFunction
andParameters:parameter];
[SparkCoreConnector connectToSparkAPIWithTransaction:postTransaction andHandler:^(NSURLResponse *response,
NSDictionary * responseDictionary,
NSError * fel)
{if(error == nil)
{
NSLog (%
}
annat
{
NSLog (%
}
{}]; / / slutet kvarter
NSLog (med app");
}
-(void) sendRequestforUnifiedFunctionWithParameter:(NSString *) parameter
{
[själv sendRequestforFunction:UNIFIEDFUNCTION withParameter:parameter];
}
Den första metoden returnerar en ordbok, som kommer direkt från Spark kärnan:
Svar:
{ansluten = 1;
ID = 53xx...;
"last_app" = "";
namn = Sushi;
"returnerat_värde" = 12.
}
Uppenbarligen den är ansluten, har en enhet-ID och ett namn, och det returnerade värdet är "12". Det senare är heltal returvärdet från funktionen i kärnan, i mitt fall antalet färger.
Den andra metoden kräver helt enkelt på den första. Det är mer intressant. Eftersom jag hittade en teknik att använda bara en enda funktion samtal på den kärnan jag kan minska min kod på iOS-enheten till bara de parametrar sträng. Jag kan inte hantera några namn på funktioner längre någonstans i min app:
#define UNIFIEDFUNCTION
Samma namn är förklarar i Spark kärnprogrammet.