Android極光推送區分測試正式環境詳解
前沿:
極光推送是我們在實際生活中使用比較多的一種推送方式,成本低廉,不少公司都是使用的他,換工作之後,當前公司還是使用的極光推送。
問題/需求想要效果:
當前的公司需要測試環境的只能夠推送測試,正式環境的只能夠推送正式,應為IOS方存在可以直接通過配置至之後實現當前需求想要的要求,但是android卻沒有,官方提供的是通過建立兩個app來實現測試對測試,正式對正式
官方提供的解決方式:
下面是具體的實現:
開發環境:AS 2.1.1.應為當前專案中也包含微信分享和高德地圖相關的問題,顧本人也提供瞭如何實現包名修改後,其他的如何實現的分享和地圖檢視相關:
1.給專案匯入相關支援的包
1)極光
//極光推送
compile 'cn.jiguang.sdk:jpush:3.0.5'
// 此處以JPush 3.0.5 版本為例。
compile 'cn.jiguang.sdk:jcore:1.1.2'
// 此處以JCore 1.1.2 版本為例。
2)其他依賴包,可以更具自己的實際使用來匯入相關包
2.自己通過程式碼實現相關的功能實現
此處省略1萬字,具體實現請根據實際需求實現
3.通過配置話實現需求想要效果
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
manifestPlaceholders = [
JPUSH_PKGNAME: "包名",
JPUSH_APPKEY : "release環境下的key",
GAODE_APPKEY:"release環境下高德key",
WEATCH_APPID:"relase環境下微信key" ,
JPUSH_CHANNEL: "developer-default",
]
}
debug {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
manifestPlaceholders = [
JPUSH_PKGNAME: "報名.debug",
JPUSH_APPKEY : "測試環境下對應的推送key",
GAODE_APPKEY:"測試環境下對應的高德地圖key",
WEATCH_APPID:"測試環境下微信對應的appid",
JPUSH_CHANNEL: "developer-default",
]
}
只要做了上面的操作就可以了,我們編譯之後就可以看到,我們執行平時走的debug環境,打relase的包都是relase環境。就能夠區分開。
缺點:
這樣做的缺點也很明顯,android很多平臺申請都是通過packageName+keystore作為唯一標識,如上的操作,就相當於我們又兩個app,顧很多情況下都需要申請兩套,尤其是在專案還有支付類的時候,就會特別覺得,申請成本比較大。
優勢:
能夠很好的測試對應debug模式,正式對應relase模式,不會正式推送到測試來,測試的也不會推送到正式來,很好的做到了完全區分開。
推薦使用:
這種方法也是極光官方推廣的比較權威的大家認可的方法,也算是比較perfect的方法 。
方法二:通過標籤和別名進行區分[不推薦]
在很多情況下,不少的需求會覺得這樣做成本比較高,他們希望能夠只申請一個應用就完成測試和正式區分開,哪怕產生一些比較明顯的bug,如果你完全不care 系統推送是否推送到時正式還是測試可以通過現在我們要說的方法。這也是極光官方以及本人並不推薦的方法,程式設計師只是需求的實現方,這樣會很明顯的造成測試不便,也沒有比較好的完成需求的要求效果。
一.App端已進入就區分環境並進行設定標籤或者別名,開始分組
if(Contens.URL.equal(“正式環境”)){
//註冊別名/標籤
.....//此處省略一萬字
}else if(Contens.URL.equal("測試環境")){
//註冊別名/標籤
.....//此處省略一萬字
}
二.這步也需要後端介面人員進行介面支援,需要通過別名或者標籤進行環境判斷
後端實現標籤/別名區分環境進行程式碼寫入
此處省略一萬字
如上這種也是可以實現測試環境和正式環境的區分,但因確定/不足明顯,顧並不推薦使用,在前期公司的專案中,有使用這種方法[方法二],而最後導致正式測試系統推送混亂,並且測試的時候也不是很方便,尤其是不敢進行通過平臺推送。
希望本篇文章對你有用
相關推薦
Android極光推送區分測試正式環境詳解
前沿: 極光推送是我們在實際生活中使用比較多的一種推送方式,成本低廉,不少公司都是使用的他,換工作之後,當前公司還是使用的極光推送。 問題/需求想要效果: 當前的公司需要測試環境的只能夠推送測試,正式環境的只能夠推送正式,應為IOS方存在可以直接通過配
Android 關於極光推送時測試和正式的問題
極光推送並沒有提供區分測試和正式的欄位,如果想區分測試和正式的環境,可以重新註冊一個,在重新註冊時,會讓你重新填寫包名, release: com.jpush.test debug: com.jpush.test.debug 然後我們配置gradle,
android 極光推送 聲音與振動 的關閉和開啟
fff getc 用法 koa pub tar brush asi drawable 前言:最近剛好在寫一些推送方面的東西,又是新手,不斷在網上找資料,很少,不過還是找到了一些,反正百度我是再也不想百度了,谷歌一下子就能找到想要的。 廢話不多說。
android 極光推送 自定義聲音
可以定義樣式,那麼可以禁用極光的聲音,收到通知就播放一個聲音就好:禁用: // 極光 JPushInterface.setDebugMode(IS_DEBUG); JPushInterface.init(this); BasicPushNotificationB
ionic平臺下的Android極光推送整合文件
雖然當前提供推送服務的第三方有很多,例如jpush,友盟,個推,騰訊信鴿等。但是由於大部分第三方只支援原生環境,再加上考慮到ionic平臺下網上已經提供了一套jpush的整合方案,所以我只是針對在jpush下ionic app推送做一些簡要的整理。 廢話不多說,直入主題。
Android極光推送通過不同的通知內容跳入不同的頁面
1、在註冊清單中加入 <receiver android:name="your receiver全路徑" android:enabled="true"> <intent-filter> <!-- 以下是要
Android 極光推送整合與使用詳解
極光新建應用 首先需要有極光賬號,在後臺新建應用 新建時會要求上傳app圖示和填寫app名字,然後需要完成推送設定 點選推送設定後出現android 與iOS的按鈕,點選android後填寫包名就好, 然後點選下載Demo來下載需要整合的控制元件
android 極光推送快速自動整合及,自定義通知樣式及雙指下拉通知欄顯示全部內容
一,整合步驟: 1.極光推送官網,註冊,登入,建立應用,用專案包名獲取AppKey: 注:包名必須與專案的包名一致 2.在 module 的 gradle 中新增依賴和支援: android { ...... defaultConfig {
Android極光推送自定義通知問題
private void showInspectorRecordNotification() { RemoteViews customView = new RemoteViews(context.getPackageName(), R.layout.
# Android 極光推送伺服器端和移動端
Android 極光推送伺服器端和移動端 這裡是Android 有關伺服器端進行推送和手機客戶端接收的一些簡單的例子 伺服器端採用的是MyEclipse2014,手機端是Android studio 2.0 下面是一個簡單的JSP頁面程式碼 <
Android極光推送(Android studio 3.0+)
使用步驟: Step 1.建立應用: 進入極光控制檯後,點選“建立應用”按鈕,進入建立應用的介面。 填上你的應用程式的名稱以及應用包名這二項就可以了, 最後點選最下方的 “建立我的應用”按鈕,建立應用完畢。 Step 2. 根目錄的主
極光推送demo測試流程,測試過程中可能遇到的問題和解決方法
建立開發證書,建立描述檔案,極光推送頁面設定,Xcode工程設定,真機測試 步驟1:建立開發證書 <1>.登陸 https://developer.apple.com進入開發者中心 <2>進入建立和描述檔案頁面 <3>.
網易雲信即時通訊推送保障及網路優化詳解(三):如何在弱網環境下優化大資料傳輸
對於移動 APP 來說,IM 功能正變得越來越重要,它能夠建立起人與人之間的連線。社交類產品中,使用者與使用者之間的溝通可以產生出更好的使用者粘性。在複雜的 Android 生態環境下,多種因素都會造成訊息推送不能及時達到客戶端。另外,不穩定的行動網路也給資料傳輸的速率和可靠
iOS13 即將到來,iOS 推送 DeviceToken 適配方案詳解
關於提前適配iOS13 蘋果推送DeviceToken的通知 隨著蘋果iOS13系統即將釋出,個推提前推出DeviceToken適
極光推送傻瓜版配置(Android Studio)
Step1 : build.gradle(Project : 專案名)中加入以下紅色部分配置(新 Android Studio 中預設就有) buildscript { repositories { jcenter()
android點選極光推送的通知跳轉到webview頁面顯示網頁,webview返回錯誤程式碼-6,無法連線伺服器
這個bug比較坑,在webview中無法開啟,將地址複製到電腦瀏覽器中能正常開啟,網上搜索到的說無法連線伺服器是沒有加"http://",可我是加了的,我加了還是打不開。某法了,去看看IP地址,終於讓我找到問題了。 後臺伺服器我搭建的是本地的,請求地址也是後臺返回來的,結果
Android快速整合極光推送,內含自定義通知,通知推送物件到某一個人,或者某一群人
整合極光推送 使用jcenter 自動整合步驟 說明 : 使用 jcenter 自動整合,不需要在專案中新增 jar 和 so,jcenter 會自動完成依賴;在 AndroidManifest.xml 中不需要新增任何 JPush SDK 相關的配置,jcen
React Native 極光推送的實現,支援Android和iOS
在接到需求後對如何實現進行了預研,發現有極光官網維護的 jpush-react-native 和 React Native 中文網維護的 react-native-jpush 供我們使用,我選擇的是 jpush-react-native。 一,相關版本資訊 { "nam
原 android進階4step3:Android常用框架——極光推送的簡單使用
官方文件:https://www.jiguang.cn/push SDK下載:http://docs.jiguang.cn/jpush/resources/ 官方Github:https://github.com/jpush 這篇文章主要介紹是怎麼使用極光推送 其他文章
android 如何整合小米和極光推送
1.在小米和極光的官網平臺的建立應用,獲取到appkey。 極光建立後直接下載官方的Demo, 小米在官網上下載SDK:https://dev.mi.com/mipush/downpage/ 2.分別整合小米和極光的原始碼到專案中去: 極光:根據官方的Demo,在清單