iCulture forum | iPhone, iPad,  iPod touch, Apple TV en iOS

iCulture forum | iPhone, iPad, iPod touch, Apple TV en iOS (https://forum.iculture.nl/)
-   Ontwikkelen voor iOS (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/)
-   -   Push notifications view (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/92841-push-notifications-view.html)

Dreissen 08-06-11 23:13

Push notifications view
 
Hallo,

IK ben wat aan het knoeien met push notifications etc, dat werkt tot zover allemaal prima alleen nu vroeg ik me dus het volgende af.

Bij sommige apps krijg je als je een push berichtje krijgt de optie om bekijk te klikken of via het lockscreen te sliden en dan brengt de app je in de app direct naar bijvoorbeeld het scherm waar de push om ging.

Neem nu de NU.nl app.
Als je daar een bericht krijgt over breakingnews en je klikt op bekijk dan ga je naar de nu app en brengt hij je via een apart scherm naar het nieuws bericht waar het over ging.

Mijn vraag is nu hoe krijg ik dit voor elkaar, moet ik dan een bepaalde waarde meegeven in de push?

Bedankt

Hollance 09-06-11 01:36

Ik heb een tijdje geleden een uitgebreide tutorial geschreven over push notifications voor Ray Wenderlich's website. Daar staat het antwoord op je vraag vast in:

Apple Push Notification Services Tutorial: Part 1/2 | Ray Wenderlich
Apple Push Notification Services Tutorial: Part 2/2 | Ray Wenderlich

Dreissen 09-06-11 02:19

Citaat:

Oorspronkelijk geplaatst door Hollance (Bericht 681364)
Ik heb een tijdje geleden een uitgebreide tutorial geschreven over push notifications voor Ray Wenderlich's website. Daar staat het antwoord op je vraag vast in:

Apple Push Notification Services Tutorial: Part 1/2 | Ray Wenderlich
Apple Push Notification Services Tutorial: Part 2/2 | Ray Wenderlich

Hey thanks voor je links, zeker een mooie tutorial, echter vind ik niet in de codes wat ik zoek.

Nog andere ideeën?

Wel erg bedankt, wellicht heb ik in de toekomst wat aan je tutorial voor wat anders :)

Whacko 09-06-11 11:57

Je kunt gewoon extra waardes in het JSON bericht zetten onder het 'aps' element. Deze krijg je in je app dan ook binnen in de NSDictionary welke meegegeven wordt tijdens de applicationDidLoad:

Dreissen 11-06-11 19:02

Hey,

Ik heb nu echt alles geprobeerd maar het lukt niet echt niet, zou je een voorbeeldje kunnen geven of me even op het goede pad kunnen zetten.

Thanks! :)

EDIT: De 'aps' aanpassen en wat extra waarden toevoegen in het JSON bericht is het probleem niet alleen het afhandelen op het apparaat lukt me niet.

Als ik bijvoorbeeld de waarde toevoeg "code" en de app krijgt de push dan moet er een webview openen met de link website.nl/CODE ik ben al veel aan het proberen maar het lukt niet echt...

Hollance 12-06-11 01:38

Dreissen: Kun je in je app de binnenkomende notificatie opvangen? Als het goed is krijg je een dictionary binnen met daarin alle gegevens uit de notification. Lukt je dat al? Zo ja, doe dan eens een NSLog("%@", dictionary); om te zien wat erin zit. Dit zou het "aps" element moeten zijn, en jouw eigen "code" element. Als je dit voor elkaar krijgt, zou je die code uit de dictionary moeten kunnen lezen. Vervolgens open je de webview, etc.

Wat ook helpt, is meer informatie geven. "Ik heb nu echt alles geprobeerd" en "ik ben al veel aan het proberen maar het lukt niet echt" duidt erop dat je niet goed snapt waar je mee bezig bent. Een beetje in het wilde weg schieten is niet echt een gestructureerde manier om programmeerproblemen op te lossen.

Mocht bovenstaande niet helpen, schrijf dan eerst eens op wat je allemaal geprobeerd hebt en waarom. Wat is je lijn van denken? Hoe probeer je dit probleem op te lossen? Als we dat weten kunnen we wat betere adviezen geven. Sterker nog: het helpt je zelf tot een betere oplossing te komen omdat je je gedachten ordent en niet zomaar lukraak dingen uitprobeert tot het "toevallig" werkt.

Succes ermee!

Dreissen 13-06-11 00:20

Citaat:

Oorspronkelijk geplaatst door Hollance (Bericht 682416)
Dreissen: Kun je in je app de binnenkomende notificatie opvangen? Als het goed is krijg je een dictionary binnen met daarin alle gegevens uit de notification. Lukt je dat al? Zo ja, doe dan eens een NSLog("%@", dictionary); om te zien wat erin zit. Dit zou het "aps" element moeten zijn, en jouw eigen "code" element. Als je dit voor elkaar krijgt, zou je die code uit de dictionary moeten kunnen lezen. Vervolgens open je de webview, etc.

Wat ook helpt, is meer informatie geven. "Ik heb nu echt alles geprobeerd" en "ik ben al veel aan het proberen maar het lukt niet echt" duidt erop dat je niet goed snapt waar je mee bezig bent. Een beetje in het wilde weg schieten is niet echt een gestructureerde manier om programmeerproblemen op te lossen.

Mocht bovenstaande niet helpen, schrijf dan eerst eens op wat je allemaal geprobeerd hebt en waarom. Wat is je lijn van denken? Hoe probeer je dit probleem op te lossen? Als we dat weten kunnen we wat betere adviezen geven. Sterker nog: het helpt je zelf tot een betere oplossing te komen omdat je je gedachten ordent en niet zomaar lukraak dingen uitprobeert tot het "toevallig" werkt.

Succes ermee!

Wat ik nu heb, de alert komt gewoon binnen dus neem aan dat alles in de 'aps' ook goed binnen komt, voor mijn push server gebruik in urban-air-ship op dit moment heb ik nog de standaard 'aps' waarden dus alert, badge en sound ik ga morgen even aan de gang en ga even proberen wat jij zij en kijken of ik alles goed binnen krijg ook als ik andere waarden toevoeg al moet dit geen probleem zijn aangezien de standaard ook binnen komen.

Ik heb echter nog geen code voor het lezen van het 'aps' gedeelte verwerkt in mijn code, dit is ook eigelijk het gedeelte waar ik vast blijf haken niet het ontvangen of versturen van het push bericht.

Bedankt

Dreissen 17-06-11 00:17

iemand nog idee?

DJ14 17-06-11 09:05

Dan doe ik maar een gok. Ik denk dat apps als NU.nl in de aps payload het "ID" van het artikel meesturen, waarna aan de hand van dit ID, na het klikken van de view button het bijbehorende artikel wordt opgevraagd, geparsed en weergegeven. Bijvoorbeeld met een URL met een variabele erin: http://www.nu.nl/artikel/id/ARTIKELID/feed.xml . Dat artikel ID is dan een variabele, die je binnen krijgt uit de aps. Wellicht dat je hier ook iets aan hebt: Getting Apple Push Notification message details upon iPhone app launch when user clicks “View” button « iPhone/iPad Developer Diary – Apple SDK developer blog & tutorial

Dreissen 17-06-11 12:03

Citaat:

Oorspronkelijk geplaatst door DJ14 (Bericht 683942)
Dan doe ik maar een gok. Ik denk dat apps als NU.nl in de aps payload het "ID" van het artikel meesturen, waarna aan de hand van dit ID, na het klikken van de view button het bijbehorende artikel wordt opgevraagd, geparsed en weergegeven. Bijvoorbeeld met een URL met een variabele erin: http://www.nu.nl/artikel/id/ARTIKELID/feed.xml . Dat artikel ID is dan een variabele, die je binnen krijgt uit de aps. Wellicht dat je hier ook iets aan hebt: Getting Apple Push Notification message details upon iPhone app launch when user clicks “View” button « iPhone/iPad Developer Diary – Apple SDK developer blog & tutorial

Ja hiermee heb ik al wat dingen geprobeerd, echter had ik niet echt een idee hoe ik de code moest verwerken in de applicatie dus dat de webview omhoog komt met de juiste URL erin, op de een of andere manier krijgt hij de payload niet goed binnen, wat raar is alert, badge en sound komen wel goed aan.

---------- Bericht automatisch samengevoegd op 17 juni 2011 om 11:23 ----------

Kijk dit is wat ik doe:

Ik stuur een code mee, in de aps is dit "feed" als meegeef dat feed gelijk is aan 22 dan wil ik dat de app een alert geeft.
Dat doe ik met deze code:

Code:

    NSString *feed = @"";
       
    if (
                ! [feed isEqualToString:@"22"]
        )
    {
       
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"test"
                                                        message:@"feed is gelijk aan 22"
                                                      delegate:nil
                                              cancelButtonTitle:@"OK"
                                              otherButtonTitles:nil];
        [alert show];
        [alert release];
    }
       
   
    return YES;
}


maar dit werkt niet, hij laat gewoon altijd dit bericht zien ook al is feed gelijk aan 23 of 24 etc.

Dit is dus de 1e stap, hierna wil ik dus de webview openen met een url met de code erin wat wordt meegegeven in feed.
Ik snap het helemaal maar begrijp alleen niet hoe ik dit qua code goed krijg.

Bedankt

DJ14 17-06-11 12:39

In de if conditie staat een uitroepteken, dat betekent dat de alert wordt geshowed als feed NIET gelijk is aan 22. Verder zie ik in deze code ook niet waar de feed uit de aps wordt gehaald? In dit stukje code is 'feed' leeg...

Nikooos 17-06-11 16:55

Citaat:

Oorspronkelijk geplaatst door DJ14 (Bericht 683984)
In de if conditie staat een uitroepteken, dat betekent dat de alert wordt geshowed als feed NIET gelijk is aan 22. Verder zie ik in deze code ook niet waar de feed uit de aps wordt gehaald? In dit stukje code is 'feed' leeg...

En leeg is niet gelijk aan 22, dus dan is wel weer aannemelijk dat hij altijd die alert laat zien. Ik denk dat je inderdaad gelijk hebt en dat hij de feed niet uit de aps haalt.

Dreissen 25-06-11 00:56

mah, het lukt me maar niet echt, hebben jullie nog iets?

DJ14 25-06-11 08:42

Post eens het stukje code waar je de variabele "feed" vult. Had je al de suggesties uit mijn vorige post geimplementeerd?

Dreissen 25-06-11 11:29

:P
Citaat:

Oorspronkelijk geplaatst door DJ14 (Bericht 686268)
Post eens het stukje code waar je de variabele "feed" vult. Had je al de suggesties uit mijn vorige post geimplementeerd?

Ja uitroep teken is weg, ik gebruik de code in die link die gepost was in dit topic.


Alle tijden zijn GMT +2. Het is nu 14:44.