10/09/2012

Android : Google Cloud Messaging & PHP ашигласан жишээ

Google Cloud Messaging service -г PHP-тэй хамт ашигласан жишээ мартахаасаа өмнө тэмдэглье гэж бодлоо.
<<<<<<<<<<<<<<<< клиент арр >>>>>>>>>
1-рт
Юуны өмнө Google APIs Console хуудасруу хандаж бүртгүүлээд дараах үйлдлүүдийг хийнэ.
1. Sender ID //бүртгэл хийгдсэнээр идвэхжинэ.
2. API key //бүртгэл хийгдсэнээр идвэхжинэ.
3. Google Cloud Messaging service-г ON болгон тохируулаарай.
Google APIs Console page

2-рт GCM.jar файл нэмэх
Дээрх алхамыг хийж дууссан бол өөрийн үүсгэсэн прожект доо gcm.jar файлыг нэмнэ.
gcm.jar файл нь дараах дир-т байрлана.
YOUR_SDK_ROOT/extras/google/gcm-client/dist

3-рт Manifest файлыг засварлах
//SDK тохируулга

(GCM SDK 8-р хувилбараас эхлэн ашиглах боломжтой.)


 


(my_app_package-өөрийн package нэрийг оруулаарай.)

application-таг дотор доорх тохиргоог нэмээрэй.

4-рт GCMIntentService класс үүсгэх.
package my_app_package;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
import android.util.Log;

import com.google.android.gcm.GCMBaseIntentService;

public class GCMIntentService extends GCMBaseIntentService {
 
    public GCMIntentService() {
        super("SENDER_ID");
    }

    @Override
    public void onRegistered(Context context, String registrationId) {
        Log.w("registration id:", registrationId);
        sendMessage("id:" + registrationId);
    }
 
    @Override
    protected void onUnregistered(Context context, String registrationId) {
        sendMessage("C2DM Unregistered");
    }
 
    @Override
    public void onError(Context context, String errorId) {
        sendMessage("err:" + errorId);
    }
 
    @Override
    protected void onMessage(Context context, Intent intent) {
        String str = intent.getStringExtra("message");
        Log.w("message:", str);
    }
}

5-рт onCreat хэсэгт доорх кодыг нэмэх
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
  GCMRegistrar.register(this, "SENDER_ID");
} else {
  Log.v(TAG, "Already registered");
}

<<<<<<<<<<<<<<<< сервер арр >>>>>>>>>
Текст илгээх
 $registration_id,
  'collapse_key' => 'update',
  'data.message' => $message,
);
$post = http_build_query($post_list, '&');

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
$ret = curl_exec($ch);
 
var_dump($ret);

?>
Continue Reading...
 

Надад итгэл бий Copyright © 2009 WoodMag is Designed by Ipietoon for Free Blogger Template