1. 程式人生 > >Android客戶端與PHP服務端通訊(五)---移植使用極光推送

Android客戶端與PHP服務端通訊(五)---移植使用極光推送

概述

    上一節備研究了示例工程的框架,本節準備自己建立工程,並將極光推送移植到其上。

建立工程

    首先建立一個工程,工程名和應用名為lovelife,包名com.lygk.lovelife

    一直“Next”,直到Finish,此時建立工程完畢,如下圖


整合JPush SDK

1. 匯入SDK開發包

    關於整合SDK的方法,JPush 官方文件已經講得很詳細,可以去看

http://docs.jpush.io/guideline/android_guide/ ,這裡我簡單的描述一下步驟。


    首先將上圖所示的示例工程下的armeabi資料夾、armeabi-v7a資料夾、jpush-sdk-release1.7.3.jar拷貝複製到自己建立的工程libs\資料夾下


    然後在工程裡F5或者工程名右擊選擇“Refresh”重新整理,可以看到此時工程裡已經包含了咱們複製的SDK。

2. 配置 AndroidManifest.xml

    首先,新增許可權宣告

    注意紅線框出的內容對應你建立的應用的Package包名,我的是com.lygk.lovelife。

    然後配置application,先要新增應用名,即下圖紅線框出的部分,其中MainApplication是我即將要建立的Application名。


    然後新增JPush SDK中的PushActivity宣告,注意紅線框出的部分對應你所建立的包名。



    接著新增Service服務宣告


    接著新增Receiver服務宣告,注意紅線圈出的部分對應你建立的包名。


    接著宣告APPKEY


    你可能會發現還有一些配置檔案的內容沒有加,沒事兒,移植從最簡單入手,先移植這些就夠了。

建立MainApplication類

    在src\Your package\下新建一個類MainApplication,它繼承Application

    MainApplication.java內容如下:

package com.lygk.lovelife;

import android.app.Application;
import android.util.Log;
import cn.jpush.android.api.JPushInterface;

public class MainApplication extends Application {
    private static final String TAG = "LYGK";

    @Override
    public void onCreate() {    	     
    	Log.d(TAG, "Application啟動");
        super.onCreate();

        JPushInterface.setDebugMode(true); 	// 設定開啟日誌,釋出時請關閉日誌
        JPushInterface.init(this);     		// 初始化 JPush
    }
}

    新增完如上程式碼後,就可以直接真機除錯了,如下Logcat可以看出定義的Application已經執行


    此時你如果直接用JPush上的控制檯傳送通知訊息,此時Application已經可以“叮”收到推送的通知了,但是此時手機上會出現錯誤提示

    意思是沒有在MainActivity中新增onResume()函式。下面咱們去修改MainActivity。

修改MainActivity

    新建立工程時生成的MainActivity繼承自Activity,如下圖


    現在,要修改其父類,使其繼承JPush庫中的InstrumentedActivity,如下圖


    同時,重構父類的onResume(),onPause(),onDestroy()函式。

    此時,執行修改後的程式,如下圖


    通過控制檯,傳送推送通知


    此時手機上可以收到推送通知,這樣說明咱們移植的最最小系統算是成功了。


    關於這部分的程式碼,如有需要,請點此下載
結尾

    上面的例子中,我精簡了官方例程中程式碼,移植了最基本的接收功能,這算是一個關於JPush的Hello World吧,剩下的就靠讀者自己去看官方文件摸索了,比如點選通知欄,卻回到了主介面?怎麼顯示自定義訊息等等。

    五一短暫的三天即將結束,這三天裡我也get了新知識,感覺蠻充實的,暫時不準備寫了,該出去轉轉打打球,洗個澡舒服的睡個覺了。(下一節準備寫PHP服務端極光推送介面的使用)
/***********************************************************************************************

*原創文章,轉載請註明網址:http://blog.csdn.net/mybelief321/article/details/45459705

*魯陽高科工作室

*網       址:www.bigbearking.com

*商務合作QQ:1519190237

*業 務 範 圍:網站建設、桌面軟體開發、Android\IOS開發、影象影視後期處理、PCB設計

***********************************************************************************************/

相關推薦

Android客戶PHP服務通訊()---移植使用極光

概述     上一節備研究了示例工程的框架,本節準備自己建立工程,並將極光推送移植到其上。 建立工程     首先建立一個工程,工程名和應用名為lovelife,包名com.lygk.lovelife     一直“Next”,直到Finish,此時建立工程完畢,如下圖

Android客戶PHP服務通訊(三)---極光註冊使用

概述     推送訊息的方式有很多,在這裡我選擇了極光推送。本節分為上下兩部分,首先通過註冊極光推送並使用其Demo程式來看一下推送的效果,然後再一步一步的修改到自己的應用上。註冊登入極光推送     開發人員基本上都瞭解使用第三方的庫,很多都需要註冊才能使用,極光推送也不

android客戶javaweb服務通訊——登入小demo的啟示

前兩天討論了javaweb專案連線mysql資料庫的注意事項,是因為剛剛租了一臺ecs雲伺服器,在上面搭載mysql要比Oracle方便很多,今天我們來探討一下android端與服務端通訊的方式方法,更多的是注意事項。 先說服務端,如果查詢成功,就返回一個由物件轉換而成的j

客戶android/ios)java服務tomcat的gzip實現

開始之前我們先來簡單說說gzip是幹什麼用的,為什麼要用 我們來舉個栗子 同一個請求他們使用gzip和不使用是完全兩個結果 例子一:正常未通過gzip壓縮的返回資料大小是100kb 例子二:添加了gzip壓縮的資料的返回資料大小可能只有40-20

Android客戶本地服務器Socket通信

msg 初始化 ips print rmi listener 個數 myeclips 開啟 Android客戶端與本地服務器Socket通信 Socket服務器運行結果圖?? 一.客戶端和服務器端的選擇: 客戶端是我們手機端,關於服務器端,只要安裝了JDK,自然就擁有通

Android 客戶Socket Java服務ServerSocket

Socket程式設計   一、Java網路程式設計基礎知識        1、兩臺計算機間進行通訊需要以下三個條件:            1)、 IP地址(例

java 服務,實現服務客戶之間的通訊以及客戶之間的通訊

此服務端是利用socket進行通訊 ServerSocket serversocket = new ServerSocket(12333); 使用本機的12333埠進行通訊,可以自己選擇 一般選擇10000以後的埠不會與其他服務衝突 import j

實現Android客戶Eclipse伺服器基於Okthhp簡單通訊

最近在重溫知識,所以藉此機會也想把自己寫的一些心得寫出來供大家分享,寫的有誤或者不好的地方望大家見諒,好了,廢話少說,直接進入正題,下面給大家介紹的就是基於目前主流網路通訊框架的okhttp實現的Android與Eclipse通訊。首先說明:我用的Android客戶端是And

android客戶php伺服器的json資料簡單互動(二)

上一篇文章講的是最簡單的通過接送的格式完成android客戶端與php伺服器互動,也就是通過JSONObject物件來進行互動。         從上篇的文章程式碼就可以看出來,如果php陣列僅僅採用鍵值對的方式進行儲存,通過很簡單的方式轉換為json格式,之後在andr

Android客戶PC進行Socket通訊

伺服器端程式碼: import java.io.IOException; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class Si

PHP客戶C#伺服器 Socket通訊

using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; namespace UpdServer

大資料入門(7)RPC客戶和RPC服務通訊

RPC客戶端和RPC服務端通訊: 客戶端:(匯入jar:hdfs,common相關的) LoginControl: public class LoginControl {     public static void main(String[] args) th

基於TCP協議實現Linux下客戶伺服器之間的通訊,實現多執行緒、多程序伺服器

TCP是TCP/IP協議族中一個比較重要的協議,這是一種可靠、建立連結、面向位元組流的傳輸,工作在傳輸層。和TCP相對的不可靠、無連結、面向資料報的協議UDP,瞭解UDP客戶端與伺服器之間通訊請戳UDP協議實現的伺服器與客戶端通訊 TCP協議建立連線 首

IOS遊戲 PHP伺服器的AES通訊加密

來源:http://www.mjplay.com.cn/ios-php-aes/ PHP 的AES加密解密 <?php $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB); $i

Unity3d遊戲客戶Photon伺服器資料通訊

本文在上一篇博文的基礎上繼續介紹使用Unity3d遊戲客戶端與Photon Server資料通訊開啟Unity3d2017,新建專案,在Asset目錄下新建Plugins資料夾找到Photon SDK目錄下的lib檔案PhotonUnity3D.dll檔案,將其拖動到Unit

基於Android平臺實戰無線點餐系統(客戶(Client)和服務(Server))

一.專案簡介 近些年餐飲行業蓬勃發展,規模也逐漸增大,但卻沒有相應地重視點菜系統,餐廳企業經常遇到顧客抱怨上菜速度慢、漏菜、丟單、 漏單,餐廳的成本很難控制等問題,加之都市生活節奏的加快,消費者在外出就餐時,就有了更高的要求。為了解決這些問題,企業可採用無線點菜系統,無

android客戶和servlet服務的簡單登入實現

本文實現了一個android客戶端輸入使用者名稱和密碼登入跳轉到其他android客戶端介面的簡單demo,主要是熟悉android客戶端的網路程式設計,服務端的程式設計,資料庫的操作。 1、android客戶端 主介面如下所示: 對應的佈局檔案: activity_ma

AndroidJava服務加密解密

本篇部落格是使用Android端與Java服務端互動——SocketIO中的通訊方式連線Android客戶端和java伺服器端的。如果對這方面沒有了解過的,可以隨意去看看;如果對這方面沒有需求或者只關心加密操作的同志請繼續。 在Android端做資料加密操作以

cocos2d-x客戶Java伺服器的通訊(一)

(⊙o⊙)…貌似自己已經有一段時間沒有寫部落格了,其實主要原因還是覺得自己水平有限,加上上班實在是太忙,實在抽不出時間來寫部落格。言歸正傳,大家都知道,在網路遊戲開發中, 網路通訊一直是個比較大的難題,一個伺服器可能要同時處理幾千上萬甚至上百萬的使用者資料,當然,僅僅是通訊

socket間通訊_TCP(用客戶給執行服務命令)

服務端: import os import socket HOST = '172.25.254.41' PORT = 9881 # 1. 建立服務端的socket物件 with socket.socket() as serverSocket: