A. 求android友盟sdk統計的簡單demo程序
http://dev.umeng.com/analytics/android-doc/integration 下載地址
B. android 6.0 的友盟統計實時日誌沒有
總體來說,友盟裡面的東西還是不錯的,這段時間,一直在用友盟,感觸最深的就是 做分享的時候,有的Android機型是不可以的分享的,直接報錯,我用的是友盟的4.3 有一部手機是Android5.0的 當分享sina時 報錯 找了各種資料 最後改動了一個文件類,同事幫忙解決了 ( ^_^ ) 有一個華為手機 分享QQ空間 直接手機無響應,這是個別的手機,方正Android機型太多了 太多奇葩了 有的人可能會說用ShareSDK 我感覺不錯用哪個第三方 ,遇到問題了都要解決的 我們做這個項目之前用過推送和更新版本,所以直接用了友盟分享,總之 還是不錯的。
配置友盟許可權和方法
[html] view plain print?
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<!-- Permission for Unit Test -->
<uses-permission android:name="android.permission.GET_TASKS"
C. android 友盟分享 為什麼activity 不行
<!-- ###################注冊SDK使用的Activity###################### -->
<!--分享編輯頁-->
<activity
android:name="com.umeng.socialize.view.ShareActivity"
android:configChanges="orientation|keyboard"
android:launchMode="singleTask"
android:noHistory="true"
android:theme="@style/Theme.UMDialog"
android:windowSoftInputMode="stateVisible|adjustResize" >
</activity>
<!-- ############ QQ空間和QQ SSO授權的Activity注冊 ############ -->
<activity
android:name="com.tencent.tauth.AuthActivity"
android:launchMode="singleTask"
android:noHistory="true" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- 100424468,如果你使用的公用賬號,則不需要修改;否則修改成你在QQ開放平台申請的 APP ID-->
<data android:scheme="tencent100424468" />
</intent-filter>
</activity>
<activity android:name="com.tencent.plus.ImageActivity" />
<activity android:name="com.tencent.connect.common.AssistActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:screenOrientation="portrait">
</activity>
<!-- ###################添加UmengAppkey###################### -->
<meta-data
android:name="UMENG_APPKEY"
android:value="xxxxxxxxxxxxxxxxxxxxxx" >
</meta-data>
</application>
<uses-sdk android:minSdkVersion="8" />
<!-- ###################聲明SDK使用的相關許可權###################### -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 檢測網路狀態 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 獲取mac地址作為用戶的備用唯一標識 -->
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 獲取用戶手機的IMEI,用來唯一的標識用戶。 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!-- 緩存資源優先存入SDcard -->
<uses-permission android:name="android.permission.INTERNET" /> <!-- 允許應用程序聯網,以便向我們的伺服器端發送數據。 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- 用於評論模塊分享位置信息 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><!-- 用於評論模塊分享位置信息 -->
private void initialUM() {
// 首先在您的Activity中添加如下成員變數
mController = UMServiceFactory.getUMSocialService("com.umeng.share",
RequestType.SOCIAL);
// 設置分享內容
mController
.setShareContent("友盟社會化組件(SDK)讓移動應用快速整合社交分享功能,http://www.umeng.com/social");
mController
.setShareMedia(new UMImage(mContext, R.drawable.ic_launcher)); // 設置分享圖片內容
SocializeConfig config = mController.getConfig();
// 開通簡訊
config.setShareSms(true);
config.setShareMail(true);
config.setPlatforms(SHARE_MEDIA.QZONE, SHARE_MEDIA.TENCENT);
// wx967daebe835fbeac是你在微信開發平台注冊應用的AppID, 這里需要替換成你注冊的AppID
String appID = "wxfc7bdd52daa288f9";
// 微信圖文分享必須設置一個Url
String contentUrl = "http://t.cn/zTXUNMu";
// 添加微信平台,參數1為當前Activity, 參數2為用戶申請AppID,參數3為點擊分享內容跳轉到的目標url
UMWXHandler wxHandler = config.supportWXPlatform(getActivity(), appID,
contentUrl);
// 設置分享標題
wxHandler.setWXTitle("浪騰微博客戶端不錯");
// 支持微信朋友圈
UMWXHandler circleHandler = config.supportWXCirclePlatform(
getActivity(), appID, contentUrl);
circleHandler.setCircleTitle("浪騰微博客戶端還不錯..");
D. 友盟統計Android以什麼確定一個用戶
Android 統計分析 SDK使用指南 1. 建立App,下載SDK 登錄你的帳號後,看到友盟的管理後台,點擊"+添加新應用",進入新應用信息填寫的頁面。 App建立成功後,可以獲得該App的AppKey,以及最新的開發指南和SDK文件。 可在 這里 下載SDK,包含開發文檔,demo程序和jar包。 說明:在新應用信息填寫中,請盡量填寫真實的信息。您可以通過友盟統計分析平台的特性節省重復建立App的時間。 如果您要對App不同的發布渠道進行統計,不需要創建新App,請使用分發渠道分析,通過分發渠道分析,您可以更方便的對比數據。 2. 實現基本的使用基本統計實現本的頁面跳轉,機型,解析度,地理位置 …的統計1. 導入umeng-sdk*.jar(簡稱SDK)下載最新版sdk的zip包,解壓將其中的umeng-sdk.jar釋放到本地目錄,Eclipse用戶右鍵您的工程根目錄,選擇Properties -> Java Build Path -> Libraries, 然後點擊 Add External JARs... 選擇指向 Analytics_Android_SDK_*.jar的路徑,點擊OK,即導入成功。 2. 配置 AndroidManifest.xml<manifest……><application ……> ……<activity ……/><meta-dataandroid:value="YOUR_APP_KEY"android:name="UMENG_APPKEY"></meta-data><meta-dataandroid:value="Channel ID"android:name="UMENG_CHANNEL"/></application><uses-sdkandroid:minSdkVersion="4"></uses-sdk><uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission><uses-permissionandroid:name="android.permission.INTERNET"></uses-permission><uses-permissionandroid:name="android.permission.READ_PHONE_STATE"></uses-permission><uses-permissionandroid:name="android.permission.READ_LOGS"></uses-permission></manifest>說明: META-DATA 用途 UMENG_APPKEY 用來定位該應用程序的唯一性。 UMENG_CHANNEL 用來標注應用推廣渠道,區分新用戶的來源來查看統計,您可以使用20位以內的英文和數字為渠道定名,替換value中的"Channel ID"。詳見渠道統計。 許可權 用途 INTERNET(必須) 允許應用程序聯網,以便向我們的伺服器端發送數據。 READ_PHONE_STATE(必須) 獲取用戶手機的IMEI,用來唯一的標識用戶。(如果您的應用會運行在無法讀取IMEI的平板上,我們會將mac地址作為用戶的唯一標識,請添加許可權: android.permission.ACCESS_WIFI_STATE ) ACCESS_NETWORK_STATE 檢測網路狀態,友盟SDK 1.6版本新增許可權。 READ_LOGS 如果您想獲得客戶端crash的報告, 需要添加這個許可權。具體見【使用錯誤報告】。 WRITE_EXTERNAL_STORAGE 如果您使用了友盟自動更新提醒功能,需添加這個許可權,為了將更新的APK臨時存在SD卡里。 3. 添加代碼 添加引用: import com.umeng.analytics.MobclickAgent 注冊 Activity: 在每個Activity的onResume方法中調用 MobclickAgent.onResume(Context), onPause方法中調用 MobclickAgent.onPause(Context) publicvoid onResume() { super.onResume(); MobclickAgent.onResume(this);}publicvoid onPause() { super.onPause(); MobclickAgent.onPause(this);}API:public void onResume(Context context) context 當前Activity的引用,這里請不要將全局的application context傳入。 public void onPause(Context context) context 當前Activity的引用,這里請不要將全局的application context傳入。 API說明: void onResume(Context context) context 當前Activity引用 void onPause(Context context) context 當前Activity引用 說明: 方法將會自動地從AndroidManifest.xml文件里讀取Appkey。 確保在所有的activity中都調用 MobclickAgent.onResume() 和MobclickAgent.onPause()方法,這兩個調用將不會阻塞應用程序的主線程,也不會影響應用程序的性能。 注意如果您的Activity之間有繼承或者控制關系請不要同時在父和子Activity中重復添加onPause和onResume方法,否則會造成重復統計(eg.使用TabHost、TabActivity、ActivityGroup時)。 一個應用程序在多個activity之間連續切換時,將會被視為同一個session(啟動)。 當用戶兩次使用之間間隔超過30秒時,將被認為是兩個的獨立的session(啟動),例如用戶回到home,或進入其他程序,經過一段時間後再返回之前的應用。 4. 測試 確認所需的許可權都已經添加:INTERNET, READ_PHONE_STATE, (READ_LOGS, WRITE_EXTERNAL_STORAGE) 確認APPKEY已經正確的寫入Androidmanifest.xml 確認所有的Activity中都調用了onResume和onPause方法 確認測試手機(或者模擬器)已成功連入網路 啟動應用程序,幾分鍾之後您應該已經可以看到相應的報表. 3. 使用錯誤報告友盟統計分析工具,還可以幫助您捕捉用戶在使用應用程序過程中出現的異常退出(FC), 並在應用程序下次啟動時將錯誤報告發送給伺服器。 1. 自動捕獲異常退出(FC) 在AndroidManifest.xml裡面添加許可權android.permission.READ_LOGS 在程序的Main Activity(應用程序入口)的onCreate方法里調用MobclickAgent.onError(Context). publicvoid onCreate(Bundle savedinstanceState) { super.onCreate(savedInstanceState); MobclickAgent.onError(this); ...}API:public void onError(Context context) context 當前Activity的引用 說明:錯誤報告包含應用程序版本,操作系統版本和設備型號以及程序出現異常時的Stacktrace,這些數據將幫助您修正應用程序的Bug。 2. 手動發送錯誤報告如果您自己捕獲了程序中的異常,但是依然希望,將這次異常信息發送到友盟的伺服器,您可以調用下面的函數。 MobclickAgent.reportError(Context context,String error) API:public void reportError(Context context, String error) context 當前Activity的引用 error 開發者手動捕獲的錯誤信息 說明:手動發送的異常信息和自動捕獲的異常信息一樣,都會展示在錯誤報告面板。 4. 使用自定義事件除了基本統計分析功能外,我們還支持您自定義的事件分析,例如您可以統計游戲中通過不同關卡的人數,廣告的點擊次數或者視頻被播放的次數等等。 使用自定義事件功能請先在網站應用管理後台(設置->編輯自定義事件)中添加相應的自定義事件後,伺服器才會對相應的自定義事件請求進行處理。 1. 事件數量統計1. 在您希望跟蹤的代碼部分,調用如下方法:MobclickAgent.onEvent(Context context, String event_id);API:public void onEvent(Context context, String event_id) context 當前Activity的引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID。 示例:統計微博應用中「轉發"事件發生的次數,那麼在「轉發"的函數里調用 MobclickAgent.onEvent(this, "Forward") 2. 記錄事件的不同屬性及取值,調用如下方法:MobclickAgent.onEvent(Context context, String event_id, Map<String,String>; map);API:public voidonEvent(Context context, String event_id, Map map) context 當前Activity的引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID。 map 為當前事件的屬性和取值集合(key-value) 示例:MobclickAgent.onEvent(LoginActivity.this, "sinaLogin"); 新浪用戶登陸海知筆記 3. 考慮事件在一個屬性上的取值,可以調用如下方法:MobclickAgent.onEvent(Context context, String event_id, String label);API:public void onEvent(Context context, String event_id, String label) context 當前Activity的引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID. label 事件的一個屬性描述 示例:統計游戲中「死亡"事件發生的關卡數,那麼可以在死亡的函數里調用 MobclickAgent.onEvent(this, "player_dead","level");2. 事件時長統計有的事件是持續發生的,需要記錄其持續的時間,這里提供兩種解決方法。 1. 在事件開始和結束時分別調用onEventBegin和 onEventEnd兩個函數。MobclickAgent.onEventBegin(Context context, String event_id);...MobclickAgent.onEventEnd(Context context, String event_id);API:public voidonEventBegin(Context context, String event_id) public void onEventEnd(Context context, String event_id) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID. public void onEventBegin(Context context, String event_id, String label) public void onEventEnd(Context context, String event_id, String label) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID. label 事件的一個屬性描述 示例:跟蹤播放音樂事件發生的總時間,在音樂播放開始時調用: MobclickAgent.onEventBegin(this, "music_play");在音樂播放結束時調用: MobclickAgent.onEventEnd(this, "music_play");2. 跟蹤時長的事件包含多個屬性,在事件開始和結束時分別調用onKVEventBegin和 onKVEventEnd兩個函數MobclickAgent.onKVEventBegin(Context context, String event_id, Map<String,String> map, String ekvFlag);...MobclickAgent.onKVEventEnd(Context context, String event_id, String ekvFlag);API:public void onKVEventBegin(Context context, String event_id, Map map, String ekvFlag) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID. map 為當前事件的屬性和取值集合(key-value) ekvFlag 事件標示符 public void onKVEventEnd(Context context, String event_id, String ekvFlag) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID ekvFlag 事件標示符,ekvFlag 和 event_id 一起標示一個唯一事件,並不會被統計;對於同一個事件,在onKVEventBegin和onKVEventEnd 中要傳遞相同的event_id 和 flag 示例跟蹤每種類型的音樂播放了多久,在音樂播放開始時調用 Map<String,String> music = new HashMap<String,String>(); music.put("type", "popular"); music.put("artist", "JJLin"); music.put("User_status", "registered");MobclickAgent.onKVEventBegin(this, "music",music,"m7");在音樂播放結束時調用: MobclickAgent.onKVEventEnd(this, "music",music,"m7");3. 自己計算並上傳event時長,在您想跟蹤時長的代碼部分,調用如下方法:MobclickAgent.onEventDuration(Context context, String event_id, long ration);orMobclickAgent.onEventDuration(Context context, String event_id,String label, long ration)orMobclickAgent.onEventDuration(Context context, String event_id, Map<String, String> map, long ration)API:public void onEventDuration(Context context, String event_id, long ration) public void onEventDuration(Context context, String event_id,String label, long ration) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID label 事件的一個屬性描述 ration 事件持續時長,單位毫秒,您需要手動計算並傳入時長,作為事件的時長參數 public void onEventDuration(Context context, String event_id, Map map, long ration) context 當前Activity引用 event_id 為當前統計的事件ID,注意要先在友盟網站上注冊此事件ID map 為當前事件的屬性和取值集合(key-value) ration 事件持續時長,單位毫秒,您需要手動計算並傳入時長,作為事件的時長參數 說明 時長是友盟統計的一個新功能,使用過程中可能會出現一些常見的錯誤,開發者應該盡量的避免,這里有一些可能出錯的案例。 每個event的key不能超過10個,event ID、map中key和value都不能使用特殊字元,且長度不能超過255個字元(否則將截取前255個字元),「id", 「ts", 「"是保留欄位,不能作為event ID及key的名稱 5. 使用分發渠道分析有時需要統計應用程序的分發渠道,例如有多少用戶來從聯想樂園下載了您的應用,又有多少用戶通過Google android market下載到您的應用程序。您只需要在AndroidManifest.xml里添加meta-data,並將 value屬性修改為對應的發布渠道名。 配置AndroidManifest.XML添加下面代碼 <application ……><activity ……/><meta-dataandroid:value="Channel ID"android:name="UMENG_CHANNEL"/></application>當然,這需要您在不同渠道發布應用程序時,重新編譯打包。 說明 不要改變'UMENG_CHANNEL',修改'Channel ID'為您的渠道名稱,注意不能是純數字(eg.value="AndroidMarket")。 每台設備只記錄第一次統計到的渠道,您如果在測試的時候發現渠道統計到的設備數量不增加,很可能是因為您用同一個設備修改過渠道號,您換一台設備測試即可。 6. 使用在線配置功能這個功能目前可以幫你在網站上動態配置兩種類型的參數: 自定義key-value型的鍵值對 數據發送策略 在程序的入口Activity的OnCreate()方法中調用 publicvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); MobclickAgent.updateOnlineConfig(this);}API:public voipdateOnlineConfig(Context context)
E. android 友盟統計有什麼用
統計的維度很多,不過最基本的新增用戶和啟動次數。關於這個,可能就需要涉及到Android的activity的生命周期和狀態改變。為了更好的理解,做了個簡單的代碼嘗試。
protectedvoid onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.e(TAG,"enter onCreate」);
}
protectedvoid onStart() {
super.onStart();
Log.e(TAG,"onStart");
}
F. 友盟統計怎麼算新增用戶 android
設備mac地址
G. android 極光推送與友盟推送哪個比較好
個人感覺極光比較好,因為極光畢竟開始就是主要做推送這塊的。
H. android友盟統計怎麼使用
建一個umeng專用的文件夾在工程里,然後寫一下方法,我是這么寫的 public static void start(Activity activity){ //顯示上傳過程 //com.umeng.analytics.MobclickAgent.setDebugMode(true); //發送錯誤報告 com.umeng.analytics.MobclickAgent.onError(activity); //自動更新 com.umeng.analytics.MobclickAgent.updateOnlineConfig(activity); //talking 初始化 TCAgent.init(activity); }
I. android 友盟推送 未讀消息怎麼做
JPush SDK 收到推送,通過廣播的方式,轉發給開發者App,這樣開發者就可以靈活地進行處理。 這個動作不是必須的。用戶有需要才定義 Receiver 類來處理 SDK過來的廣播。 如果不做這個動作,即不寫自定義 Receiver,也不在 AndroidManifest.xml 里配置這個 Receiver,則默認的行為是: 接收到推送的自定義消息,則沒有被處理 可以正常收到通知,用戶點擊打開應用主界面 接受廣播 如果全部類型的廣播都接收,則需要在 AndroidManifest.xml 里添加如下的配置信息: <receiver android:name="Your Receiver" android:enabled="true"> <intent-filter> <action android:name="cn.jpush.android.intent.REGISTRATION" /> <action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" /> <action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" /> <action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" /> <category android:name="You package Name" /> </intent-filter> </receiver> 每個 Receiver action 詳細解釋如下。 Action - cn.jpush.android.intent.REGISTRATION SDK 向 JPush Server 注冊所得到的注冊 ID 。 一般來說,可不處理此廣播信息。 要深入地集成極光推送,開發者想要自己保存App用戶與JPush 用戶關系時,則接受此廣播,取得 Registration ID 並保存與App uid 的關繫到開發者自己的應用伺服器上。 使用極光推送提供的別名與標簽功能,是更加簡單輕便的綁定App用戶與JPush用戶的方式,請參考文檔:別名與標簽使用教程。 Intent 參數 JPushInterface.EXTRA_REGISTRATION_ID SDK 向 JPush Server 注冊所得到的注冊 全局唯一的 ID ,可以通過此 ID 向對應的客戶端發送消息和通知。 Bundle bundle = intent.getExtras(); String title = bundle.getString(JPushInterface.EXTRA_REGISTRATION_ID); Action - cn.jpush.android.intent.MESSAGE_RECEIVED 收到了自定義消息 Push 。 SDK 對自定義消息,只是傳遞,不會有任何界面上的展示。 如果開發者想推送自定義消息 Push,則需要在 AndroidManifest.xml 里配置此 Receiver action,並且在自己寫的 BroadcastReceiver 里接收處理。 Intent 參數 JPushInterface.EXTRA_TITLE 保存伺服器推送下來的消息的標題。 對應 API 消息內容的 title 欄位。 對應 Portal 推送消息界面上的「標題」欄位(可選). Bundle bundle = intent.getExtras(); String title = bundle.getString(JPushInterface.EXTRA_TITLE); JPushInterface.EXTRA_MESSAGE 保存伺服器推送下來的消息內容。 對應 API 消息內容的 message 欄位。 對應 Portal 推送消息界面上的"消息內容」欄位。 Bundle bundle = intent.getExtras(); String message = bundle.getString(JPushInterface.EXTRA_MESSAGE); JPushInterface.EXTRA_EXTRA 保存伺服器推送下來的附加欄位。這是個 JSON 字元串。 對應 API 消息內容的 extras 欄位。 對應 Portal 推送消息界面上的「自定義內容」。 Bundle bundle = intent.getExtras(); String extras = bundle.getString(JPushInterface.EXTRA_EXTRA); JPushInterface.EXTRA_CONTENT_TYPE 保存伺服器推送下來的內容類型。 對應 API 消息內容的 content_type 欄位。 Bundle bundle = intent.getExtras(); String type = bundle.getString(JPushInterface.EXTRA_CONTENT_TYPE); JPushInterface.EXTRA_RICHPUSH_FILE_PATH SDK 1.4.0 以上版本支持。 富媒體通消息推送下載後的文件路徑和文件名。 Bundle bundle = intent.getExtras(); String file = bundle.getString(JPushInterface.EXTRA_RICHPUSH_FILE_PATH); JPushInterface.EXTRA_MSG_ID SDK 1.6.1 以上版本支持。 唯一標識消息的 ID, 可用於上報統計等。 Bundle bundle = intent.getExtras(); String file = bundle.getString(JPushInterface.EXTRA_MSG_ID); Action - cn.jpush.android.intent.NOTIFICATION_RECEIVED 收到了通知 Push。 如果通知的內容為空,則在通知欄上不會展示通知。但是,這個廣播 Intent 還是會有。開發者可以取到通知內容外的其他信息。 Intent 參數 JPushInterface.EXTRA_NOTIFICATION_TITLE 保存伺服器推送下來的通知的標題。 對應 API 通知內容的 n_title 欄位。 對應 Portal 推送通知界面上的「通知標題」欄位。 Bundle bundle = intent.getExtras(); String title = bundle.getString(JPushInterface.EXTRA_NOTIFICATION_TITLE); JPushInterface.EXTRA_ALERT 保存伺服器推送下來的通知內容。 對應 API 通知內容的 n_content 欄位。 對應 Portal 推送通知界面上的「通知內容」欄位。 Bundle bundle = intent.getExtras(); String content = bundle.getString(JPushInterface.EXTRA_ALERT); JPushInterface.EXTRA_EXTRA SDK 1.2.9 以上版本支持。 保存伺服器推送下來的附加欄位。這是個 JSON 字元串。 對應 API 通知內容的 n_extras 欄位。 對應 Portal 推送通知界面上的「自定義內容」欄位。 Bundle bundle = intent.getExtras(); String extras = bundle.getString(JPushInterface.EXTRA_EXTRA); JPushInterface.EXTRA_NOTIFICATION_ID SDK 1.3.5 以上版本支持。 通知欄的Notification ID,可以用於清除Notification Bundle bundle = intent.getExtras(); int notificationId = bundle.getInt(JPushInterface.EXTRA_NOTIFICATION_ID); JPushInterface.EXTRA_CONTENT_TYPE 保存伺服器推送下來的內容類型。 對應 API 消息內容的 content_type 欄位。 Portal 上暫時未提供輸入欄位。 Bundle bundle = intent.getExtras(); String type = bundle.getString(JPushInterface.EXTRA_CONTENT_TYPE); JPushInterface.EXTRA_RICHPUSH_HTML_PATH SDK 1.4.0 以上版本支持。 富媒體通知推送下載的HTML的文件路徑,用於展現WebView。 Bundle bundle = intent.getExtras(); String fileHtml = bundle.getString(JPushInterface.EXTRA_RICHPUSH_HTML_PATH); JPushInterface.EXTRA_RICHPUSH_HTML_RES SDK 1.4.0 以上版本支持。 富媒體通知推送下載的圖片資源的文件名,多個文件名用 「,」 分開。 與 「JPushInterface.EXTRA_RICHPUSH_HTML_PATH」 位於同一個路徑。 Bundle bundle = intent.getExtras(); String fileStr = bundle.getString(JPushInterface.EXTRA_RICHPUSH_HTML_RES); String[] fileNames = fileStr.spilt(","); JPushInterface.EXTRA_MSG_ID SDK 1.6.1 以上版本支持。 唯一標識通知消息的 ID, 可用於上報統計等。 Bundle bundle = intent.getExtras(); String file = bundle.getString(JPushInterface.EXTRA_MSG_ID); Action - cn.jpush.android.intent.NOTIFICATION_OPENED 用戶點擊了通知。 一般情況下,用戶不需要配置此 receiver action。 如果開發者在 AndroidManifest.xml 里未配置此 receiver action,那麼,SDK 會默認打開應用程序的主 Activity,相當於用戶點擊桌面圖標的效果。 如果開發者在 AndroidManifest.xml 里配置了此 receiver action,那麼,當用戶點擊通知時,SDK 不會做動作。開發者應該在自己寫的 BroadcastReceiver 類里處理,比如打開某 Activity 。 Intent 參數 JPushInterface.EXTRA_NOTIFICATION_TITLE 保存伺服器推送下來的通知的標題。 對應 API 通知內容的 n_title 欄位。 對應 Portal 推送通知界面上的「通知標題」欄位。 Bundle bundle = intent.getExtras(); String title = bundle.getString(JPushInterface.EXTRA_NOTIFICATION_TITLE); JPushInterface.EXTRA_ALERT 保存伺服器推送下來的通知內容。 對應 API 通知內容的n_content欄位。 對應 Portal 推送通知界面上的「通知內容」欄位。 Bundle bundle = intent.getExtras(); String content = bundle.getString(JPushInterface.EXTRA_ALERT); JPushInterface.EXTRA_EXTRA SDK 1.2.9 以上版本支持。 保存伺服器推送下來的附加欄位。這是個 JSON 字元串。 對應 API 消息內容的 n_extras 欄位。 對應 Portal 推送通知界面上的「自定義內容」欄位。 Bundle bundle = intent.getExtras(); String type = bundle.getString(JPushInterface.EXTRA_EXTRA); JPushInterface.EXTRA_NOTIFICATION_ID SDK 1.3.5 以上版本支持。 通知欄的Notification ID,可以用於清除Notification Bundle bundle = intent.getExtras(); int notificationId = bundle.getInt(JPushInterface.EXTRA_NOTIFICATION_ID JPushInterface.EXTRA_MSG_ID SDK 1.6.1 以上版本支持。 唯一標識調整消息的 ID, 可用於上報統計等。 Bundle bundle = intent.getExtras(); String file = bundle.getString(JPushInterface.EXTRA_MSG_ID); 代碼示例 public void onReceive(Context context, Intent intent) { Bundle bundle = intent.getExtras(); Log.d(TAG, "onReceive - " + intent.getAction()); if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) { } else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent.getAction())) { System.out.println("收到了自定義消息。消息內容是:" + bundle.getString(JPushInterface.EXTRA_MESSAGE)); // 自定義消息不會展示在通知欄,完全要開發者寫代碼去處理 } else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent.getAction())) { System.out.println("收到了通知"); // 在這里可以做些統計,或者做些其他工作 } else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) { System.out.println("用戶點擊打開了通知"); // 在這里可以自己寫代碼去定義用戶點擊後的行為 Intent i = new Intent(context, TestActivity.class); //自定義打開的界面 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } else { Log.d(TAG, "Unhandled intent - " + intent.getAction()); } }
J. android 友盟微信支付怎麼使用
這是集成在微信客戶端的支付功能,用戶只需在微信中關聯一張銀行卡,並完成身份認證,即可將裝有微信app的智能手機變成一個全能錢包,之後即可購買合作商戶的商品及服務,用戶在支付時只需在自己的智能手機上輸入密碼,無需任何刷卡步驟即可完成支付,整個過程簡便流暢。
據悉,家樂福全國237家門店陸續接入微信支付,還有其它商家,美團、京東、商超、便利店、餐館等等均可使用微信支付。而且也有很多APP亦完成了接入,該APP是否支持建議咨詢一下APP廠商。
目前,微信支付已實現刷卡支付、掃碼支付、公眾號支付、APP支付,並提供企業紅包、代金券、立減優惠等營銷新工具,滿足用戶及商戶的不同支付場景。