Android極光推送通過不同的通知內容跳入不同的頁面
1、在註冊清單中加入
<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" /> <action android:name="cn.jpush.android.intent.NOTIFICATION_CLICK_ACTION" /> <action android:name="cn.jpush.android.intent.CONNECTION" /> <category android:name="your包名" /> </intent-filter> </receiver>
2、編寫receiver
package com.youzheng.slqx.activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; import org.json.JSONException; import org.json.JSONObject; import java.util.Iterator; import java.util.logging.Logger; import cn.jpush.android.api.JPushInterface; /** * 自定義接收器 * * 如果不定義這個 Receiver,則: * 1) 預設使用者會開啟主介面 * 2) 接收不到自定義訊息 */ public class MyTReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { try { Bundle bundle = intent.getExtras(); if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) { String regId = bundle.getString(JPushInterface.EXTRA_REGISTRATION_ID); //send the Registration Id to your server... } else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent.getAction())) { } else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent.getAction())) { int notifactionId = bundle.getInt(JPushInterface.EXTRA_NOTIFICATION_ID); } else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) { //使用者點選通知會走的方法 //獲取推送訊息的方法 String content = bundle.getString(JPushInterface.EXTRA_ALERT); // 在這裡可以自己寫程式碼去定義使用者點選後的行為 if(context != null){ Log.e("content",content); //例如 如果推送內容以【訊息】開頭 則點選後跳轉到訊息的Activity 否則跳轉到主頁面 if(content.startsWith("【氣象預警】")||content.startsWith("【水利預警】")){//判斷內容的條件 Intent i = new Intent(context, YJJCActivity.class); //開啟訊息介面 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } if(content.startsWith("【國突預警】")){ Intent i = new Intent(context, YJTXActivity.class); //開啟主介面 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } Intent i = new Intent(context, YJJKActivity.class); //開啟主介面 i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); }else{ } } else if (JPushInterface.ACTION_RICHPUSH_CALLBACK.equals(intent.getAction())) { //在這裡根據 JPushInterface.EXTRA_EXTRA 的內容處理程式碼,比如開啟新的Activity, 開啟一個網頁等.. } else if(JPushInterface.ACTION_CONNECTION_CHANGE.equals(intent.getAction())) { boolean connected = intent.getBooleanExtra(JPushInterface.EXTRA_CONNECTION_CHANGE, false); } else { } } catch (Exception e){ } }
3、極光有一個bug就是必須展開通知點選才能進入指定的頁面。????
4、還有一個注意的地方,極光推送的內容,不包含標題的,切記切記,可嘗試列印內容,通過內容的特定文字進行判斷。
相關推薦
Android極光推送通過不同的通知內容跳入不同的頁面
1、在註冊清單中加入 <receiver android:name="your receiver全路徑" android:enabled="true"> <intent-filter> <!-- 以下是要
Android極光推送自定義通知問題
private void showInspectorRecordNotification() { RemoteViews customView = new RemoteViews(context.getPackageName(), R.layout.
android 極光推送快速自動整合及,自定義通知樣式及雙指下拉通知欄顯示全部內容
一,整合步驟: 1.極光推送官網,註冊,登入,建立應用,用專案包名獲取AppKey: 注:包名必須與專案的包名一致 2.在 module 的 gradle 中新增依賴和支援: android { ...... defaultConfig {
android 極光推送 聲音與振動 的關閉和開啟
fff getc 用法 koa pub tar brush asi drawable 前言:最近剛好在寫一些推送方面的東西,又是新手,不斷在網上找資料,很少,不過還是找到了一些,反正百度我是再也不想百度了,谷歌一下子就能找到想要的。 廢話不多說。
關於百度推送點選通知,跳轉的問題(Android)
今天在跟同事測試百度推送,之前一直困擾我的一個問題得到了有效解決,挺高興的,所以記錄一下,同時告誡自己,遇到問題,解決解決再解決,一定能夠解決的! 切入正題,百度推送的demo跟我們的app有些不一樣
android 極光推送 自定義聲音
可以定義樣式,那麼可以禁用極光的聲音,收到通知就播放一個聲音就好:禁用: // 極光 JPushInterface.setDebugMode(IS_DEBUG); JPushInterface.init(this); BasicPushNotificationB
ionic平臺下的Android極光推送整合文件
雖然當前提供推送服務的第三方有很多,例如jpush,友盟,個推,騰訊信鴿等。但是由於大部分第三方只支援原生環境,再加上考慮到ionic平臺下網上已經提供了一套jpush的整合方案,所以我只是針對在jpush下ionic app推送做一些簡要的整理。 廢話不多說,直入主題。
Android極光推送區分測試正式環境詳解
前沿: 極光推送是我們在實際生活中使用比較多的一種推送方式,成本低廉,不少公司都是使用的他,換工作之後,當前公司還是使用的極光推送。 問題/需求想要效果: 當前的公司需要測試環境的只能夠推送測試,正式環境的只能夠推送正式,應為IOS方存在可以直接通過配
Android 極光推送整合與使用詳解
極光新建應用 首先需要有極光賬號,在後臺新建應用 新建時會要求上傳app圖示和填寫app名字,然後需要完成推送設定 點選推送設定後出現android 與iOS的按鈕,點選android後填寫包名就好, 然後點選下載Demo來下載需要整合的控制元件
極光推送能收到通知卻收不到自定義訊息
public class MyJPushReceiver extends BroadcastReceiver { private static String TAG = “pushreceiver”; public MyJPushReceiv
# Android 極光推送伺服器端和移動端
Android 極光推送伺服器端和移動端 這裡是Android 有關伺服器端進行推送和手機客戶端接收的一些簡單的例子 伺服器端採用的是MyEclipse2014,手機端是Android studio 2.0 下面是一個簡單的JSP頁面程式碼 <
Android極光推送(Android studio 3.0+)
使用步驟: Step 1.建立應用: 進入極光控制檯後,點選“建立應用”按鈕,進入建立應用的介面。 填上你的應用程式的名稱以及應用包名這二項就可以了, 最後點選最下方的 “建立我的應用”按鈕,建立應用完畢。 Step 2. 根目錄的主
極光推送點選通知彈出toast+不能被取消的通知
傳送通知: NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); Notification.Build
android點選極光推送的通知跳轉到webview頁面顯示網頁,webview返回錯誤程式碼-6,無法連線伺服器
這個bug比較坑,在webview中無法開啟,將地址複製到電腦瀏覽器中能正常開啟,網上搜索到的說無法連線伺服器是沒有加"http://",可我是加了的,我加了還是打不開。某法了,去看看IP地址,終於讓我找到問題了。 後臺伺服器我搭建的是本地的,請求地址也是後臺返回來的,結果
Android快速整合極光推送,內含自定義通知,通知推送物件到某一個人,或者某一群人
整合極光推送 使用jcenter 自動整合步驟 說明 : 使用 jcenter 自動整合,不需要在專案中新增 jar 和 so,jcenter 會自動完成依賴;在 AndroidManifest.xml 中不需要新增任何 JPush SDK 相關的配置,jcen
Android 根據訊息推送內容跳轉至指定頁面(極光推送)
首先認識一下安卓newIntent方法的使用:newIntent方法的使用在於如果activity已經開啟了,並設定了啟動模式為: android:launchMode="singleTask"的時候,當再次使用intent來啟動這個activtiy的時候就會進入這個方法裡
Android開發之魅族手機收不到極光推送JPush通知
情景 收不到通知,狀態列沒有、聲音沒有、控制檯不列印log 如果是控制檯不列印log,那就找MyReceiver找到推送的程式碼部分,檢視編譯是否有問題,有問題的話是肯定不通過的。而且日誌也顯示不出來。 正常的收到推送的話會出來兩條訊息,一條是系統通知,一
在整合極光推送後,根據不同推送內容跳轉App相應的頁面
前言:由於某push到達率問題,所以我們決定換成口碑較高的極光推送,在此梳理一下完成過程,小菜鳥剛剛起步,不足之處還請各位多多指教~ 需求:1.整合極光推送 2.根據推送內容的不同跳轉相應的頁面,也就是獲取推送內容並作出處理(非官網中所
極光推送能獲取 registrationId,但是接收不到通知 - iOS
整合極光推送進行除錯的時候,執行 App 可以正常獲取 registrationId,但是卻遲遲無法收到推送訊息,而Android 端是可以正常收到訊息; 檢查了證書配置和極光的配置一切正常,便開始返回檢視 code 尋找問題. 最終發現如下方法中的 deviceToken 被注掉後導致註冊 i
極光推送傻瓜版配置(Android Studio)
Step1 : build.gradle(Project : 專案名)中加入以下紅色部分配置(新 Android Studio 中預設就有) buildscript { repositories { jcenter()