c2dm receiving messages on device side

39 views
Skip to first unread message

sashad

unread,
Jan 27, 2011, 12:15:02 AM1/27/11
to android-c2dm
Hello,

I register my device for c2dm service and get registration_id without
any problems
Then getting ClientLogin Auth=<auth> also works fine for me

So on my server I have register_id, device_id ( as a collapse key) and
auth
All this ids I get for the same myc...@gmail.com

The problem is when I send POST to Google c2dm server it respond me
OK
id0=<id>

no errors or other complains. But on device side I didn't receive
message.


I also tried to use auth token for m...@gmail.com account on my server
side but in this case I receive error message
401 error

Please, If you have any clues why it is like that, help me with
understanding

Questions:
Why we need to set up cookies?
from documentation:
>>Header with a ClientLogin Auth token. The cookie must be associated with the ac2dm service. Required.
I have got auth token but I didn't use cookies for that.

Could I use different account on my server side or it must be
myc...@gmail.com?

--
Oleksandr

sashad

unread,
Feb 7, 2011, 1:15:01 PM2/7/11
to android-c2dm
When I take a look to device logs at the same moment as I send c2dm
message
I have this

02-07 13:07:05.536: VERBOSE/AlarmManager(1309): Adding Alarm{44fc88d8
type 2 com.google.android.gsf} Dec 31 07:17:03 pm
02-07 13:07:05.632: ERROR/TalkProvider(1467): query db caught
02-07 13:07:05.632: ERROR/TalkProvider(1467):
java.lang.IllegalArgumentException: the bind value at index 2 is null
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:
234)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.database.sqlite.SQLiteQuery.bindString(SQLiteQuery.java:182)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:
48)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:
1345)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:
330)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.talk.TalkProvider.queryInternal(TalkProvider.java:
1740)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.talk.TalkProvider.query(TalkProvider.java:1436)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.content.ContentProvider$Transport.query(ContentProvider.java:
163)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
android.content.ContentResolver.query(ContentResolver.java:245)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.DatabaseHelper.getOffTheRecordCursor(DatabaseHelper.java:
756)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.java:
206)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
168)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
264)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.java:
721)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
521)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
org.jivesoftware.smack.PacketReader
$ListenerWrapper.notifyListener(PacketReader.java:1860)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
451)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
02-07 13:07:05.632: ERROR/TalkProvider(1467): at
org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
02-07 13:07:05.642: ERROR/Smack/Packet(1467): [PacketReader]
listenerThread: caught exception
02-07 13:07:05.652: ERROR/Smack/Packet(1467): notify conn error. close
connection!
02-07 13:07:05.652: ERROR/Smack/Packet(1467):
java.lang.NullPointerException
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.java:
208)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
168)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
264)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.java:
721)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
521)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
org.jivesoftware.smack.PacketReader
$ListenerWrapper.notifyListener(PacketReader.java:1860)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
451)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
02-07 13:07:05.652: ERROR/Smack/Packet(1467): at
org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
02-07 13:07:05.652: DEBUG/Smack(1467): [XMPPConn] close connection,
notifyClosed=false
02-07 13:07:05.806: VERBOSE/AlarmManager(1309): Adding Alarm{44f51fb8
type 2 com.google.android.gsf} Dec 31 07:03:36 pm
02-07 13:07:18.986: DEBUG/GpsXtraDownloader(1309): Downloading XTRA
data from http://xtra1.gpsonextra.net/xtra.bin
02-07 13:07:19.572: DEBUG/GpsLocationProvider(1309): calling
native_inject_xtra_data
02-07 13:07:19.572: DEBUG/GpsLocationProvider(1309): Acquiring
wakelock
02-07 13:07:19.572: DEBUG/lib_locapi(1309):
qct_loc_eng_inject_xtra_data, xtra size = 39767
02-07 13:07:19.572: VERBOSE/lib_locapi(1309): inject_xtra_waiting =
true, 0, 0

Could someone suggest what parameter I miss
Thanks

sashad

unread,
Feb 7, 2011, 1:27:27 PM2/7/11
to android-c2dm
this is my request:
POST raw data without header:

registration_id=APA91bEqj4r25eBV4oOUrME...YvXKzNw6gZi1UQZNISw2cvoCXYnU
&collapse_key=f73c36cd76bb1fe2&delay_while_idle=0&data.event=c2dm
message

thanks

On Feb 7, 1:15 pm, sashad <olexanderdanc...@gmail.com> wrote:
> When I take a look to device logs at the same moment as I send c2dm
> message
> I have this
>
> 02-07 13:07:05.536: VERBOSE/AlarmManager(1309): Adding Alarm{44fc88d8
> type 2 com.google.android.gsf} Dec 31 07:17:03 pm
> 02-07 13:07:05.632: ERROR/TalkProvider(1467): query db caught
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):
> java.lang.IllegalArgumentException: the bind value at index 2 is null
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:
> 234)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteQuery.bindString(SQLiteQuery.java:182)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDr­iver.java:
> 48)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.j­ava:
> 1345)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:
> 330)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.talk.TalkProvider.queryInternal(TalkProvider.java:
> 1740)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.talk.TalkProvider.query(TalkProvider.java:1436)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.content.ContentProvider$Transport.query(ContentProvider.java:
> 163)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.content.ContentResolver.query(ContentResolver.java:245)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.DatabaseHelper.getOffTheRecordCursor(Da­tabaseHelper.java:
> 756)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.­java:
> 206)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
> 168)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
> 264)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.­java:
> 721)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
> 521)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader
> $ListenerWrapper.notifyListener(PacketReader.java:1860)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
> 451)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
> 02-07 13:07:05.642: ERROR/Smack/Packet(1467): [PacketReader]
> listenerThread: caught exception
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467): notify conn error. close
> connection!
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):
> java.lang.NullPointerException
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.­java:
> 208)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
> 168)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
> 264)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.­java:
> 721)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
> 521)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader
> $ListenerWrapper.notifyListener(PacketReader.java:1860)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
> 451)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
> 02-07 13:07:05.652: DEBUG/Smack(1467): [XMPPConn] close connection,
> notifyClosed=false
> 02-07 13:07:05.806: VERBOSE/AlarmManager(1309): Adding Alarm{44f51fb8
> type 2 com.google.android.gsf} Dec 31 07:03:36 pm
> 02-07 13:07:18.986: DEBUG/GpsXtraDownloader(1309): Downloading XTRA
> data fromhttp://xtra1.gpsonextra.net/xtra.bin

roshan

unread,
Feb 10, 2011, 5:14:48 AM2/10/11
to android-c2dm
hi shashad,

I am getting 401 error while sending the messages to the c2dm server
with the auth and reg id. Could u plz tell me how u solved it.

anil kukreti

unread,
Feb 10, 2011, 5:20:01 AM2/10/11
to androi...@googlegroups.com
Hi
 
I 've successfully pushed the sms to c2dm server with regis_id and auth token. I 've got id:adba..... in response.
 
But didn't receive any push sms or update .
--
Thanks for Cooperating!
 Anil Kukreti

We are not here for making a history.
We here for making a future. !
09717125554
09312646623
Linked In : http://in.linkedin.com/in/anilkukreti
Blog : http://androidosbeginning.blogspot.com/
Skype Id : anil.kleward

roshan vidapanakal

unread,
Feb 10, 2011, 5:23:28 AM2/10/11
to androi...@googlegroups.com
Hi anil,

I am getting 401 error,

the same account i am using. but showing the same. r u generating the auth token on the client side (on mobile) or on the third party server?
--
Regards,
Roshan

anil kukreti

unread,
Feb 10, 2011, 5:26:08 AM2/10/11
to androi...@googlegroups.com
Hi roshan
 
I 'm generation the auth token at third party server.

sashad

unread,
Feb 11, 2011, 12:14:39 PM2/11/11
to android-c2dm
Hello guys,

Thank you for the help
it is working now and I didn't change my code
so I assume that someone fixed it on c2dm server side

it works perfect now


On Feb 7, 1:15 pm, sashad <olexanderdanc...@gmail.com> wrote:
> When I take a look to device logs at the same moment as I send c2dm
> message
> I have this
>
> 02-07 13:07:05.536: VERBOSE/AlarmManager(1309): Adding Alarm{44fc88d8
> type 2 com.google.android.gsf} Dec 31 07:17:03 pm
> 02-07 13:07:05.632: ERROR/TalkProvider(1467): query db caught
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):
> java.lang.IllegalArgumentException: the bind value at index 2 is null
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteProgram.bindString(SQLiteProgram.java:
> 234)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteQuery.bindString(SQLiteQuery.java:182)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDr­iver.java:
> 48)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.j­ava:
> 1345)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.database.sqlite.SQLiteQueryBuilder.query(SQLiteQueryBuilder.java:
> 330)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.talk.TalkProvider.queryInternal(TalkProvider.java:
> 1740)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.talk.TalkProvider.query(TalkProvider.java:1436)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.content.ContentProvider$Transport.query(ContentProvider.java:
> 163)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> android.content.ContentResolver.query(ContentResolver.java:245)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.DatabaseHelper.getOffTheRecordCursor(Da­tabaseHelper.java:
> 756)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.­java:
> 206)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
> 168)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
> 264)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.­java:
> 721)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
> 521)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader
> $ListenerWrapper.notifyListener(PacketReader.java:1860)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
> 451)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
> 02-07 13:07:05.632: ERROR/TalkProvider(1467):     at
> org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
> 02-07 13:07:05.642: ERROR/Smack/Packet(1467): [PacketReader]
> listenerThread: caught exception
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467): notify conn error. close
> connection!
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):
> java.lang.NullPointerException
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.queryOtrCursor(ChatSession.­java:
> 208)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatSession.<init>(ChatSession.java:
> 168)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.createChatSession(ChatMgr.java:
> 264)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processIncomingMessage(ChatMgr.­java:
> 721)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> com.google.android.gsf.gtalkservice.ChatMgr.processPacket(ChatMgr.java:
> 521)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader
> $ListenerWrapper.notifyListener(PacketReader.java:1860)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader.processListeners(PacketReader.java:
> 451)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader.access$200(PacketReader.java:91)
> 02-07 13:07:05.652: ERROR/Smack/Packet(1467):     at
> org.jivesoftware.smack.PacketReader$3.run(PacketReader.java:154)
> 02-07 13:07:05.652: DEBUG/Smack(1467): [XMPPConn] close connection,
> notifyClosed=false
> 02-07 13:07:05.806: VERBOSE/AlarmManager(1309): Adding Alarm{44f51fb8
> type 2 com.google.android.gsf} Dec 31 07:03:36 pm
> 02-07 13:07:18.986: DEBUG/GpsXtraDownloader(1309): Downloading XTRA
> data fromhttp://xtra1.gpsonextra.net/xtra.bin

sashad

unread,
Feb 11, 2011, 12:28:42 PM2/11/11
to android-c2dm
only think I have changed since last time.. I have changed package id
(was package="com.myapp") and I changed it to
(package="com.company.myapp")
I just thought that may be this information will be helpful in case if
it is a reason for all those exceptions

roshan vidapanakal

unread,
Feb 13, 2011, 11:44:24 PM2/13/11
to androi...@googlegroups.com
HI everyone,

In one emulator,
I am running the android registration separately and getting the regid for the device. and using it in the server for getting auth token. I am sending the message to the c2dm server, able to receive the messge on the device with the email id i have registered to receive the msg.
In the other emulator,
i am have another google account, which is signed in, and i am getting the regid , and doing the same  but unable to receive the message on the device.

plz any one can guide me where i am gng wrong.
--
Regards,
Roshan

roshan vidapanakal

unread,
Feb 14, 2011, 1:43:42 AM2/14/11
to androi...@googlegroups.com
I am receiving the intent of received msg in my C2DM receiver. But i want to display the msg on to the device. In the
public String onMessage(Context context, Intent intent) {
        Log.w("C2DMReceiver1", intent.getStringExtra("payload"));
        msg = intent.getStringExtra("payload");
        Log.w("C2DMReceiver", "received");
        return intent.getStringExtra("payload");
    }

But when i am calling in my displayMessage activity it is giving me null,
how can i solve it?

public class MessageDisplay extends Activity
{
    private TextView title;
    private TextView msg;
    Context context;
    Intent intent;
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.messages);
            title = (TextView)findViewById(R.id.title);
            title.setText("Messages");
            C2DMReceiver receiver = new C2DMReceiver();
            msg = (TextView)findViewById(R.id.numbers);
            String message = receiver.onMessage(context,intent);
            System.out.println(message);
            msg.setText(message);
            //
        }
}

Plz suggest me.
--
Regards,
Roshan

Olexander Danchuk

unread,
Feb 14, 2011, 2:59:47 AM2/14/11
to androi...@googlegroups.com
1. I didn't see activity intent call. please add it.
2. use application context not activity context
3. it is a good idea to create c2dmreceiver inherited from serviceIntent. In this case you should not create it programmatically.
add service to manifest. system will create it when it has intents in queue

Regards,
Oleksandr

Thank you for your time and I look forward to your mails


2011/2/14 roshan vidapanakal <roshanr...@gmail.com>

roshan vidapanakal

unread,
Feb 14, 2011, 3:08:18 AM2/14/11
to androi...@googlegroups.com
1. Could you plz tell me how to create "activity intent call"
2. What is the difference btw application context and activity context
--
Regards,
Roshan

Olexander Danchuk

unread,
Feb 14, 2011, 4:29:46 AM2/14/11
to androi...@googlegroups.com
it is not a c2dm question

roshan vidapanakal

unread,
Feb 14, 2011, 4:40:19 AM2/14/11
to androi...@googlegroups.com
its okay, but i am receiving the msg in my log cat , how can i display it on the activity,
I used

private void message() {
        Log.w("roshan","roshan");
        C2DMBroadcastReceiver batteryLevelReceiver = new C2DMBroadcastReceiver() {
            public void onReceive(Context context, Intent intent) {
            
               
                   
                 
                    String s = intent.getStringExtra("payload");
                    title = (TextView)findViewById(R.id.title);
                    title.setText(title);
            }
        };

but unable to to display the received msg, but getting in the logcat
--
Regards,
Roshan

Olexander Danchuk

unread,
Feb 14, 2011, 4:56:22 AM2/14/11
to androi...@googlegroups.com
here it is one way to invoke activity from Broadcast Receiver

C2DMBroadcastReceiver batteryLevelReceiver = new C2DMBroadcastReceiver() {

 public void onReceive(Context context, Intent intent) {
   String s = intent.getStringExtra("payload");
   Intent intent1 = new Intent(context, MessageDisplay.class);
   intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   intent1.putExtra("message", s);
   context.startActivity(intent1);
 }
}

Roshan, it is not aligned to c2dm service

ov

unread,
Feb 14, 2011, 5:18:56 AM2/14/11
to android-c2dm
I can't get send message working. I have the client auth code and
device registration id, but get an invalid registration message.

Is there anything additional that needs to be done on the client code
once the registration id is received from the google servers.
I send it to the backend server, which saves it. Any idea what is
causing the InvalidRegistration message on the send.

The client is running the application, so the note in the
documentation that the device may not be running the app is not
applicable.

The send logic in the server is -
$postfields = "registration_id=" . $registrationid .
"&collapse_key=" . $collapsekey .
"&data.arg=" . $data;

// send message to the client via google c2dm servers
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://android.apis.google.com/c2dm/
send");
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);

$response = curl_exec($ch);

I had the registrationid, collapsekey and data values urlencoded, but
that did not work either. Still have the InvalidRegistration message
on Send.

Thanks!

On Feb 14, 1:56 am, Olexander Danchuk <olexanderdanc...@gmail.com>
wrote:
> here it is one way to invoke activity from Broadcast Receiver
>
> C2DMBroadcastReceiver batteryLevelReceiver = new C2DMBroadcastReceiver() {
>
>  public void onReceive(Context context, Intent intent) {
>    String s = intent.getStringExtra("payload");
>    Intent intent1 = new Intent(context, MessageDisplay.class);
>    intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
>    intent1.putExtra("message", s);
>    context.startActivity(intent1);
>  }
>
> }
>
> Roshan, it is not aligned to c2dm service
>
> Regards,
> Oleksandr
>
> Thank you for your time and I look forward to your mails
>
> 2011/2/14 roshan vidapanakal <roshanrani2...@gmail.com>
>
>
>
> > its okay, but i am receiving the msg in my log cat , how can i display it
> > on the activity,
> > I used
>
> > private void message() {
> >         Log.w("roshan","roshan");
> >         C2DMBroadcastReceiver batteryLevelReceiver = new
> > C2DMBroadcastReceiver() {
> >             public void onReceive(Context context, Intent intent) {
>
> >                     String s = intent.getStringExtra("payload");
>
> >                     title = (TextView)findViewById(R.id.title);
> >                     title.setText(title);
> >             }
> >         };
>
> > but unable to to display the received msg, but getting in the logcat
>
> > On Mon, Feb 14, 2011 at 2:59 PM, Olexander Danchuk <
> > olexanderdanc...@gmail.com> wrote:
>
> >> it is not a c2dm question
>
> >> Regards,
> >> Oleksandr
>
> >> Thank you for your time and I look forward to your mails
>
> >> 2011/2/14 roshan vidapanakal <roshanrani2...@gmail.com>
>
> >>> 1. Could you plz tell me how to create "activity intent call"
> >>> 2. What is the difference btw application context and activity context
>
> >>> On Mon, Feb 14, 2011 at 1:29 PM, Olexander Danchuk <
> >>> olexanderdanc...@gmail.com> wrote:
>
> >>>> 1. I didn't see activity intent call. please add it.
> >>>> 2. use application context not activity context
> >>>> 3. it is a good idea to create c2dmreceiver inherited from
> >>>> serviceIntent. In this case you should not create it programmatically.
> >>>> add service to manifest. system will create it when it has intents in
> >>>> queue
>
> >>>> Regards,
> >>>> Oleksandr
>
> >>>> Thank you for your time and I look forward to your mails
>
> >>>> 2011/2/14 roshan vidapanakal <roshanrani2...@gmail.com>
> ...
>
> read more »

roshan vidapanakal

unread,
Feb 14, 2011, 5:48:40 AM2/14/11
to androi...@googlegroups.com
Hi Olexa..,

1. I have registered with one account on my emulator(x...@gmail.com), i have already logged into it,
now my sender id is x...@gmail.com,
I am generating the auth token: with the same x...@gmail.com and password

able to receive the messages

2. I created another emulator
now i have another account y...@gmail.com on that emulator,
reg id :x...@gmail.com
authtoken:y...@gmail.com
its giving me 401 error

how can the other users use the c2dm services, with their accounts when i created the app with my mail account.

plz respond to this quickly.
--
Regards,
Roshan
Reply all
Reply to author
Forward
0 new messages