JavaBuildPath->Libraries,然后點擊AddExternalJARs...選擇指向jar' />
  • <kbd id="qyk40"></kbd>
  • <strike id="qyk40"></strike><samp id="qyk40"><pre id="qyk40"></pre></samp>

    1. 導入SDK所需jar包

    下載最新版SDK的zip包,將其中的libs 文件夾合并到本地工程libs子目錄下,再在Eclipse里面刷新一下工程。

    注意

    • Eclipse ADT 17 以下版本用戶,可以使用老方式添加工程引用。 Eclipse用戶鼠標右鍵工程根目錄,選擇Properties -> Java Build Path -> Libraries,然后點擊Add External JARs... 選擇指向jar的路徑,點擊OK,即導入成功。 如果引用過程中出現問題, 可以參考Dealing with dependencies in Android projects.

    • Android Studio 以及Gradle 用戶請參考如何引用第三方類庫說明, 暫不提供 maven 支持。

    • 本SDK需要最新版本的 android-support-v4.jar 支持包。請在工程中添加 android-support-v4.jar 支持包。 關于v4 支持包說明, 請參考 http://developer.android.com/tools/support-library/features.html#v4 .

    2. 使用SDK包中的Demo進行調試(可選)

    1. 導入SDK包中Demo的代碼到Eclipse。
    2. 用添加應用時獲得的AppKey和Umeng Message Secret替換掉Demo中默認的AppKey和Umeng Message Secret。
    3. 用添加應用時填寫的包名(多包名時根據需要填寫其中一個)替換Demo的包名(com.umeng.message.example)。包括:
      • AndroidManifest.xml文件中的"package"字段。
      • AndroidManifest.xml文件中的標簽下與消息推送相關的組件包名。
      • Eclipse里的包名。
    4. 重新打包Demo。將Demo的apk包安裝到測試設備上并打開。
    5. 參照步驟4.3的說明,給該設備發送測試消息。

    3. 配置AndroidManifest.xml

    3.1 添加權限

    標簽下:

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    

    說明

    • 下面兩個權限為消息推送SDK V1.2.3版本中添加的權限,新版中已經不需要這兩個權限。
        <uses-permission android:name="android.permission.GET_TASKS" />  
        <uses-permission android:name="android.permission.REORDER_TASKS" />
    

    3.2 添加組件

    標簽下:

    注意

    添加組件時需要將【應用包名】替換為你自己應用的包名。

    <receiver
        android:name="com.umeng.message.NotificationProxyBroadcastReceiver"
        android:exported="false" >
    receiver>
    <receiver android:name="com.umeng.message.RegistrationReceiver" >
        <intent-filter>
            <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
        intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.PACKAGE_REMOVED" />
    
            <data android:scheme="package" />
        intent-filter>
    
         
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        intent-filter>
    
    receiver>
    <receiver android:name="com.umeng.message.UmengBroadcastReceiver" >
        <intent-filter>
            <action android:name="org.agoo.android.intent.action.RECEIVE" />
        intent-filter>
        <intent-filter>
            <action android:name="【應用包名】.intent.action.COMMAND" />
        intent-filter>
        <intent-filter>
            <action android:name="org.agoo.android.intent.action.RE_ELECTION_V2" />
        intent-filter>
    receiver>
    <service
        android:name="com.umeng.message.UmengService"
        android:exported="true"
        android:process=":umengService_v1" >
        <intent-filter>
            <action android:name="【應用包名】.intent.action.START" />
        intent-filter>
        <intent-filter>
            <action android:name="【應用包名】.intent.action.COCKROACH" />
        intent-filter>
        <intent-filter>
            <action android:name="org.agoo.android.intent.action.PING" />
        intent-filter>
    service>
    <service
        android:name="org.android.agoo.service.ElectionService"
        android:exported="true"
        android:process=":umengService_v1" >
        <intent-filter>
            <action android:name="org.agoo.android.intent.action.ELECTION_V2" />
        intent-filter>
    service>
    <service android:name="com.umeng.message.UmengIntentService" />
    
    <service android:name="com.umeng.message.UmengDownloadResourceService" />
    

    3.3 添加 AppKey 和 Umeng Message Secret

    標簽下:

    <meta-data
        android:name="UMENG_APPKEY"
        android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxx" >
    meta-data>
    <meta-data
        android:name="UMENG_MESSAGE_SECRET"
        android:value="xxxxxxxxxxxxxxxxxxxxxxxxxxxx" >
    meta-data>
    

    說明

    請在 http://message.umeng.com 創建應用,獲取應用對應的AppKey和Umeng Message Secret。

    3.4 添加Channel ID

    你可以用Channel ID來標識APP的推廣渠道,作為推送消息時給用戶分組的一個維度。設置方法如下:

    標簽下:

    <meta-data
        android:name="UMENG_CHANNEL"
        android:value="Channel ID" >
    meta-data>
    

    將"android:value"中的"Channel ID"替換為APP的推廣渠道。

    或者,通過調用以下代碼來設置推廣渠道。

    mPushAgent.setMessageChannel();
    

    說明

    • 若同時在AndroidManifest.xml和代碼設置了MessageChannel,則以代碼設置的為準。
    • 若在AndroidManifest.xml和代碼里均沒有設置,則使用Unknown作為Channel ID。
    • 你可以使用20位以內的英文和數字為渠道定名(不要使用純數字)。
    • 友盟消息推送可以和友盟統計分析共用一個"Channel ID"字段。
    • 你可以使用友盟渠道打包工具,一次生成多個渠道包。

    4. 添加代碼,編譯測試

    4.1 添加代碼

    4.1.1 開啟推送服務

    在應用的主Activity onCreate() 函數中開啟推送服務

    PushAgent mPushAgent = PushAgent.getInstance(context);
    mPushAgent.enable();
    
    • 可以通過接口 mPushAgent.disable(); 來關閉客戶端的通知服務。
    • 通過mPushAgent.isEnabled() 來查詢狀態。 狀態表示有沒有啟用/關閉推送功能, 不表示推送后臺服務的運行狀態。

    注意

    如果你的應用繼承了Application, 不要在Application onCreate() 中調用 mPushAgent.enable();. 由于SDK 設計的邏輯, 這會造成循環。

    4.1.2 統計應用啟動數據

    在所有的Activity 的onCreate 函數添加

    PushAgent.getInstance(context).onAppStart();
    

    注意: 如果不調用此方法,將會導致按照"幾天不活躍"條件來推送失效。

    4.1.3 獲取設備的Device Token(可選)

    如果在測試或其他使用場景中,需要獲取設備的Device Token,可以使用下面的方法。

    String device_token = UmengRegistrar.getRegistrationId(context)
    

    說明

    • Device Token為友盟生成的用于標識設備的id,長度為44位,不能定制和修改。同一臺設備上每個應用對應的Device Token不一樣。
    • 獲取Device Token的代碼需要放在mPushAgent.enable();后面,注冊成功以后調用才能獲得Device Token。
    • 如果返回值為空, 說明設備還沒有注冊成功, 需要等待幾秒鐘,同時請確保測試手機網絡暢通。

    4.2 編譯

    添加代碼完畢后,編譯apk包。然后將apk包安裝到聯網的測試設備上并打開。

    說明

    如果在編譯和調試過程中遇到問題(例如混淆或無法編譯),請參考步驟7中常見問題的處理方法。

    4.3 在測試模式中發送測試消息

    4.3.1 獲取測試設備的Device Token。

    可以在Debug模式下輸出的logcat中看到Device Token,也可以使用下面的方法來獲取Device Token。

    String device_token = UmengRegistrar.getRegistrationId(context)
    

    說明

    • Device Token為友盟生成的用于標識設備的id,長度為44位,不能定制和修改。同一臺設備上每個應用對應的Device Token不一樣。
    • 獲取Device Token的代碼需要放在mPushAgent.enable();后面,注冊成功以后調用才能獲得Device Token。
    • 如果返回值為空, 說明設備還沒有注冊成功, 需要等待幾秒鐘,同時請確保測試手機網絡暢通。

    4.3.2 添加測試設備

    在友盟消息推送服務后臺( http://message.umeng.com )的“測試模式”中填寫該設備的Device Token,將該設備添加為測試設備,

    4.3.3 發送測試消息

    在“測試模式”中發送測試消息。在測試設備上收到消息,表明SDK集成成功。

    說明

    SDK 默認使用通知欄展示通知消息,開發者可以在友盟后臺指定用戶點擊通知欄時的操作,包括“打開應用”、“打開指定頁面(Activity)”、或“打開指定網頁”。 如果沒有收到消息,請參考FAQ中的處理方法。

    4.4 API對接(可選)

    如果要使用API對接友盟服務器來發送消息,需要在友盟消息推送服務后臺( http://message.umeng.com )填寫服務器地址,進行白名單登記。 參考API文檔中的格式發送測試消息。需要填寫正確的App Master Secret。

    5. 自定義消息的打開動作和處理方式

    5.1 消息的分類

    在友盟后臺,消息分為兩類:

    1. 通知消息

    該消息包含Notification所需的參數,如Notification的標題、內容、是否振動、點擊后的相應動作等信息。如下圖所示:

    穩定

    產品高可用性高并發

    貼心

    項目群及時溝通

    專業

    產品經理1v1支持

    快速

    MVP模式小步快跑

    承諾

    我們選擇聲譽

    堅持

    10年專注高端品質開發
    • 返回頂部
    日本精品久久久久久久久免费| 国产精品久久现线拍久青草| 国产精品美女久久久m| 国产福利精品在线观看| 日韩精品视频美在线精品视频| 国产精品99re| 国产精品国产三级国快看| 亚洲中文字幕久久精品无码VA | 性色精品视频网站在线观看| 亚洲精品一品区二品区三品区| 久久97久久97精品免视看秋霞 | 久久精品国产亚洲AV无码娇色 | 99re视频热这里只有精品7| 国产成人精品18| 91精品国产91| 青娱分类视频精品免费2| 国产精品免费网站| 国产精品美女久久久| 国产成人愉拍精品| 国产精品久久影院| 国产精品视频第一页| 精品久久久久久婷婷| 国产精品久久久久无码av| 99久久国产热无码精品免费| 国产精品久久永久免费| 国产精品久久波多野结衣| 2020久久精品亚洲热综合一本| 国产伦精品一区二区三区女| 九九精品视频在线观看| 亚洲熟妇成人精品一区| 亚洲精品中文字幕无码A片老| 亚洲国产精品一区二区三区在线观看| 国产成人精品视频在放| 97精品人妻系列无码人妻| 亚洲乱码日产精品一二三| 无码人妻精品丰满熟妇区| 国产精品毛多多水多| 国产91精品不卡在线| 亚洲av日韩av无码| 国产日韩精品一区二区在线观看 | 亚洲国产一二三精品无码|