2014년 11월 6일 목요일

폰갭과 안드로이드 푸시 알림

이 문서에서 나는 방법은 폰갭과 안드로이드 설정 푸시 알림에 설명 할 것이다. 또한 iOS 용 폰갭으로 설정하는 방법에 푸시 알림에 기사를 썼다.
기계적 인조 인간

당신의 폰갭 응용 프로그램을 준비

우선, 당신은 설치해야 폰갭에 대한 푸시 플러그인 :
또한 폰갭 장치 플러그인이 필요합니다 :
당신이해야 할 다음 일은, 복사이다  PushNotification.js을  -file 앱 (또는, 앱이 바로이 파일을 필요로 무엇이든 앱의 하위 디렉토리)의 WWW-폴더로 이동합니다.내 앱 '이 파일에 포함 된 index.html의  -file를 :
이제 우리는 사용자의 장치를 등록하고 거기에 푸시 알림을받을 우리의 응용 프로그램을 허용하는 몇 가지 자바 스크립트를 추가해야합니다 :
아이폰 OS의 등록 ID 제공하는 반면 : 안드로이드와 아이폰 OS-접근 방법 사이에 하나 사소한 차이가 있음을 유의하시기 바랍니다 pushSuccessHandler을  , 안드로이드의 알림 전송 등록  -event를.

안드로이드에 CONSOLE.LOG () : 팁

당신이 폰갭으로 개발하는 경우에 당신은 때때로에 액세스해야 할   CONSOLE.LOG를 ()  당신이에 테스트 안드로이드 장치에서 파생 -messages. 터미널에서 다음 명령을 입력하여이 메시지를 읽을 수 있습니다 :

구글 개발자 콘솔 내에서 설정 앱

이것은 우리가 안드로이드 API에 대한 구글의 클라우드 메시징 (GCM)과 우리의 응용 프로그램을 등록하는 부분입니다, 그래서 우리의 응용 프로그램은 구글에서 푸시 알림을 보낼 수 있습니다. 나는 단계별로이 모든 설정하는 방법에 대해 설명하려고합니다 :
  • 에 로그인 구글 개발자 콘솔 .
  • 새로운 API 프로젝트를 만듭니다.
  • 메뉴에서 'API의 및 인증'을 선택합니다.
  • EN 선택 '안드로이드에 대한 Google 클라우드 메시징'은 'ON'으로 설정합니다.
  • 그런 다음 메뉴에서 '자격'을 선택합니다.
  • '공개 키 액세스'에서, 새로운 공개 키를 생성합니다.
  • 'server' 키를 선택하고 / 푸시 알림을 보낼 수 있도록 허용 된 IP 주소를 추가합니다. 테스트를 위해 당신은 주소를 추가 할 수 있습니다 0.0.0.0/0을  .
  • 여기서 생성 년대 API 키를 복사합니다. 당신은 GCM 서버에 연결하기 위해 PHP 스크립트에서이 필요합니다.
  • 에 로그인 구글 플레이 개발자 콘솔 .
  • 앱을 선택하고, '서비스 및 API를'로 이동합니다.
  • 당신의 응용 프로그램과 함께 당신의 GCM 앱 ID를 결합한다. 귀하의 GCM 앱 ID는 구글 API 프로젝트에 할당 된 것 프로젝트 번호입니다.
즉입니다! 이제 당신은 푸시 알림을 보내 구글에서 최대 app 해당 설정!

설치 당신의 PHP 서버

이 예는 설치하는 간단한 PHP 서버가 구글의 GCM 서버로 푸시 알림을 보내는 방법에 대한 간단한 예를 제공합니다. 이 이것에 대한 아웃 - 오브 - 박스 솔루션입니다,하지만 이것을 달성하는 방법에 대한 최소한의 예를하는 것도 좋다 :
이 문서에서 나는 방법은 폰갭과 안드로이드 설정 푸시 알림에 설명 할 것이다. 또한 iOS 용 폰갭으로 설정하는 방법에 푸시 알림에 기사를 썼다.


기계적 인조 인간

당신의 폰갭 응용 프로그램을 준비
우선, 당신은 설치해야 폰갭에 대한 푸시 플러그인 :


$ cordova plugin add https://github.com/phonegap-build/PushPlugin.git
또한 폰갭 장치 플러그인이 필요합니다 :

$ cordova plugin add org.apache.cordova.device
당신이해야 할 다음 일은, 복사이다  PushNotification.js을  -file 앱 (또는, 앱이 바로이 파일을 필요로 무엇이든 앱의 하위 디렉토리)의 WWW-폴더로 이동합니다. 내 앱 '이 파일에 포함 된 index.html의  -file를 :

XHTML

1
<script type="text/javascript" src="js/PushNotification.js"></script>
이제 우리는 사용자의 장치를 등록하고 거기에 푸시 알림을받을 우리의 응용 프로그램을 허용하는 몇 가지 자바 스크립트를 추가해야합니다 :

JavaScript
// Setup push notifications:
try
{
    var pushNotification = window.plugins.pushNotification;
    if (window.device.platform == 'android' || device.platform == 'Android') {
        // Register for Android:
        pushNotification.register(
            pushSuccessHandler,
            pushErrorHandler, {
                "senderID":"...", // Project number from Google Developer Console
                "ecb":"onNotificationGCM"
            }
        );
    }
}
catch(err)
{
    // For this example, we'll fail silently ...
    console.log(err);
}

/**
 * Success handler for when connected to push server
 * @param result
 */
var pushSuccessHandler = function(result)
{
    console.log(result);
};

/**
 * Error handler for when not connected to push server
 * @param error
 */
var pushErrorHandler = function(error)
{
    console.log(error);
};

/**
 * Notification from Android GCM
 * @param e
 */
var onNotificationGCM = function(e)
{
    // Check which event:
    switch(e.event)
    {
        case 'registered' :
        {
            console.log('android reg id: ' + e.regid);
            break;
        }
    }
};
아이폰 OS의 등록 ID 제공하는 반면 : 안드로이드와 아이폰 OS-접근 방법 사이에 하나 사소한 차이가 있음을 유의하시기 바랍니다 pushSuccessHandler을  , 안드로이드의 알림 전송 등록  -event를.

안드로이드에 CONSOLE.LOG () : 팁
당신이 폰갭으로 개발하는 경우에 당신은 때때로에 액세스해야 할   CONSOLE.LOG를 ()  당신이에 테스트 안드로이드 장치에서 파생 -messages. 터미널에서 다음 명령을 입력하여이 메시지를 읽을 수 있습니다 :


1
$ adb logcat CordovaLog:D \*:S
구글 개발자 콘솔 내에서 설정 앱
이것은 우리가 안드로이드 API에 대한 구글의 클라우드 메시징 (GCM)과 우리의 응용 프로그램을 등록하는 부분입니다, 그래서 우리의 응용 프로그램은 구글에서 푸시 알림을 보낼 수 있습니다. 나는 단계별로이 모든 설정하는 방법에 대해 설명하려고합니다 :

에 로그인 구글 개발자 콘솔 .
새로운 API 프로젝트를 만듭니다.
메뉴에서 'API의 및 인증'을 선택합니다.
EN 선택 '안드로이드에 대한 Google 클라우드 메시징'은 'ON'으로 설정합니다.
그런 다음 메뉴에서 '자격'을 선택합니다.
'공개 키 액세스'에서, 새로운 공개 키를 생성합니다.
'server' 키를 선택하고 / 푸시 알림을 보낼 수 있도록 허용 된 IP 주소를 추가합니다. 테스트를 위해 당신은 주소를 추가 할 수 있습니다 0.0.0.0/0을  .
여기서 생성 년대 API 키를 복사합니다. 당신은 GCM 서버에 연결하기 위해 PHP 스크립트에서이 필요합니다.
에 로그인 구글 플레이 개발자 콘솔 .
앱을 선택하고, '서비스 및 API를'로 이동합니다.
당신의 응용 프로그램과 함께 당신의 GCM 앱 ID를 결합한다. 귀하의 GCM 앱 ID는 구글 API 프로젝트에 할당 된 것 프로젝트 번호입니다.
즉입니다! 이제 당신은 푸시 알림을 보내 구글에서 최대 app 해당 설정!

설치 당신의 PHP 서버
이 예는 설치하는 간단한 PHP 서버가 구글의 GCM 서버로 푸시 알림을 보내는 방법에 대한 간단한 예를 제공합니다. 이 이것에 대한 아웃 - 오브 - 박스 솔루션입니다,하지만 이것을 달성하는 방법에 대한 최소한의 예를하는 것도 좋다 :

PHP

// Set parameters:
$apiKey = '...'; // API key from Google Developer Console
$gcmUrl = 'https://android.googleapis.com/gcm/send';

// Get the device token (fetch from database for example):
$regid  = '...';

// Set message:
$message = 'Hello Android!';

// Send message:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $gcmUrl);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
    array(
        'Authorization: key=' . $apiKey,
        'Content-Type: application/json'
    )
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(
        array(
            'registration_ids' => array($regid),
            'data' => array(
                'message' => $message
            )
        ),
        JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP
    )
);

$result = curl_exec($ch);
if ($result === false) {
    throw new \Exception(curl_error($ch));
}

curl_close($ch);
즉입니다! 지금 당신은 당신의 안드로이드 폰갭 애플리케이션에 PHP 서버에서 푸시 알림을 보낼 수 있습니다.

댓글 없음:

댓글 쓰기