1. 程式人生 > >關於友盟分享成功以後,點選"留在QQ","留在微信"...無法判斷分享是否成功問題

關於友盟分享成功以後,點選"留在QQ","留在微信"...無法判斷分享是否成功問題

如果分享成功以後,點選“留在QQ”,"留在微信"... 就不會呼叫下面的方法:
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{}
就無法判斷分享是否成功,也無法進行分享成功你想進行的操作(例如:分享成功獲取積分,獎勵等。。。)

如果點選“返回XXX”,方法的呼叫順序如下:

1:介面即將進入前臺

- (void)applicationWillEnterForeground:(UIApplication *)application
2:分享結果回撥
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options
3:介面已經進入活躍狀態(前臺)
- (void)applicationDidBecomeActive:(UIApplication *)application

如果點選“留在QQ”,方法的呼叫順序如下:

1:即將進入前臺

- (void)applicationWillEnterForeground:(UIApplication *)application 
2:介面已經進入前臺
- (void)applicationDidBecomeActive:(UIApplication *)application

解決方法:

1.在點選QQ,微信分享的時候,設定一個全域性的標識:(根據自己的需要,設定不同的變數)

NSUserDefaults * userDef = [NSUserDefaults standardUserDefaults];
[userDef setBool:YES forKey:@"IS_SHARE"];//標記是否點選
[userDef synchronize];
2.在分享結果回撥的方法中實現:
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{
    BOOL result = [UMSocialSnsService handleOpenURL:url];
    NSString * urlString = [url absoluteString];
    NSLog(@"%@",urlString);
    if([urlString hasPrefix:@"QQ"]){
        //QQ
        if (![urlString containsString:@"error=0"]) {//QQ分享成功會有error=0欄位
            NSUserDefaults * userDef = [NSUserDefaults standardUserDefaults];
            [userDef setBool:NO forKey:@"IS_SHARE"];
            [userDef synchronize];
        }
    }
    return result;
}
-(void)didFinishGetUMSocialDataInViewController:(UMSocialResponseEntity *)response{
    NSLog(@"分享結果:%@",response);
    if (response.responseCode != 200) {
        NSUserDefaults * userDef = [NSUserDefaults standardUserDefaults];
        [userDef setBool:NO forKey:@"IS_SHARE"];
        [userDef synchronize];
    }
}


3.在已經進入頁面以後:
- (void)applicationDidBecomeActive:(UIApplication *)application {
    NSUserDefaults * userDef = [NSUserDefaults standardUserDefaults];
    BOOL isShare = [userDef boolForKey:@"IS_SHARE"];
    if (isShare) {
        //進行自己想要做的操作,增加使用者積分,發放獎勵等。。。。
    }
}


相關推薦

關於分享成功以後"留在QQ""留在"...無法判斷分享是否成功問題

如果分享成功以後,點選“留在QQ”,"留在微信"... 就不會呼叫下面的方法: -(BOOL)application:(UIApplication *)app openURL:(NSURL *)ur

使用jquery進行事件繫結一次傳送兩個請求並且以後次數翻倍

出現的問題:使用jquery進行事件繫結,點選一次,執行兩次點選事件,並且在不重新整理頁面的時候,點選第三次的時候會執行四次,並且以後次數會進行翻倍。問題的原因:用jquery繫結一個click事件,jquery中並不是替換原因的function,而是接著新增。解決此問題的方

localStorage使用例項-進入顯示廣告關閉之後重新整理網頁不再出現

仿一下京東官網頂部的廣告關閉,效果為第一次進入官網會出現廣告,然後點選關閉,重新整理網頁不會再顯示廣告,但是當清除localStorage存入的資料,重新整理網頁會再顯示廣告。 html程式碼 <div class="header"> <div class="

vue元件通訊傳值動態傳值(父傳子子傳父)

vue說到元件通訊,無非是父元件傳子元件,子元件傳父元件,跨級元件傳值,同級元件傳值,個人覺得,除了父子元件的傳值,其餘情況就可以用vuex來解決了,這篇先不說vuex,這裡介紹父子元件傳值。不會你打我! 一、父元件傳子元件,核心--props 下面是場景,點選傳值給子元

jq 鍵盤事件鍵盤上的上鍵input上一個獲取焦點下鍵input下一個獲取焦點

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script

批量登入qq空間推廣連結增加

原始碼請至此處下載:https://github.com/inmyjs/apqq_space 或者直接下載打包好的,https://download.csdn.net/download/kunoy/10652361 ,下載解壓,點選start.exe啟動。 此軟體適合在qq

一個可以隨手勢拖動的EditText更改內容附帶解決軟鍵盤遮擋終極方法

慣例先來看效果圖: 最近產品同學的需求,要求定製一個可拖拽可編輯的文字,原本覺得還挺簡單,不就是寫個EditText處理一下touch事件麼,後來做了發現還有些小坑,記錄一下,順便給大家做個參考。 試錯 首先我嘗試自定義一個EditText,重寫o

【小程式】當前“頁面B”動態更改title返回按鈕更改的標題會顯示在“來源頁面A”

最近在做小程式的時候遇到這麼一個有趣的問題,就是從A頁面跳轉到B頁面,如果B頁面需要在介面載入之後更改title, 並且如果介面請求過慢,還滅有請求完畢時就點選返回按鈕回到A頁面,這時B頁面的請求會繼

音樂播放圖示轉動音樂停止圖示不動

<!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>animation</title>     &l

Android實現ListView顯示資訊每個item跳轉到相應介面

介面如下:(做這個目的僅僅是為了學習一點小知識,因為自己才剛開始) 實現的方法比較簡單,就是定義一個ListView,然後設定監聽,ListView對每個條目的監聽是setOnItemClickListener。 onItemClick(AdapterView&

一個音樂播放器Vue實現(音樂唱片下面播放中間的圖片可以轉起來。)

https://www.jb51.net/article/134491.htm 需求:做一個類似於下圖所示的音樂唱片,中間暫時用本地圖片,點選下面播放,中間的圖片可以轉起來。 效果: html <div id="musicImage"> <div class="

Android 自定義的Dialog確定按鈕讓其根據條件判斷消失與否

自定義個Dialog,,但是點選確定按鈕的時候,對話方塊會直接消失,這不符合我的需求,我需要在點選確定的時候,判斷是否滿足一定的條件,如果滿足就讓其消失,如果不滿足,給個提示,但是對話方塊不消失,例如自定義的時間選擇控制元件,如果選擇的結束時間小於開始時間,給個

如何實現table中某行選中某行改變其背景色

1、首先,現在你的檔案中匯入 jquery.js 檔案 2、在<script></script>中新增如下程式碼 $("#table1 tr").click(function(){        document.getElementById("od

解決----安裝完第一次使用的時候home鍵再進去會進入啟動頁。退出app第二次使用就沒這問題

我遇到的問題是:安裝完第一次使用的時候,點選home鍵,再進去會進入啟動頁。退出app第二次使用,就沒這問題。解決方法: 在根activity的oncreate方法中貼上這行程式碼 if (!isT

Android相簿支援檢視本地相簿放大圖片滑動切換圖片手勢放大縮小

最近在做一個專案,需要用到點選選擇相簿圖片和展示好友說說圖片,之前也未接觸過,找了很久,都沒有找到我想要的效果,不是隻能檢視相簿點選放大,要不就只是左右滑動的demo,於是修改了兩個大神的程式碼(來源

廣告banner:手動滑動切換自動切換跳轉非同步載入網路圖片

效果圖: 該banner功能有自動切換圖片,點選圖片可以自定義事件,手動滑動切換,非同步載入圖片 程式碼說話: 佈局檔案: <!-- 廣告位 --> <FrameLayout android:

解決listview 中item時item裡的所有設定了selector的元件全部一起變色

listview中如果不設定,item裡面的每個元件的背景顏色的話,預設情況下,點選item時,會有listview的預設,點選變色。預設的效果很醜,所以我們一般都會使用自定義的顏色。 現在我要實現這種效果,如上圖紅框中的兩個元件。這是一個listview,我想要實現

Android在xml中設定元件風格(圓角效果selector邊框進度條風格動畫)TextView文字透明度

在標題中寫到的元件的特效,都是在xml中為元件定義的 步驟: 1.在drawable下建立“Drawable resource file”,命名為:btn_corners(表示功能:圓角button) 2.在btn_corners.xml檔案中寫入程式碼如下 3.TextV

實現一個LinearLayout中包含一個TextView和一個EditTextEditText是整個LinearLayout都獲取焦點主要用於登入介面賬號密碼輸入框的UI設計

最近在製作一個專案的登陸介面UI的時候,由於沒有專業美工的作圖,很多素材都是要自己去搜集,有時候難免去“盜用”其他作品中的圖片,然而圖片大小等方面適配都不太理想,邊邊角角的空隙處理也不嚴謹。       在賬號密碼輸入框的樣式設計的時候,要實現一個LinearLayout中

手機通訊錄可模糊搜尋字母定位無需引用其他元件

公司需要個簡易通訊錄,自己就根據介面定義寫了個元件,支援手機號和工號模糊搜尋,開始用a和id錨點定位,但是會影響路由跳轉,最後改用scrollTop offsetHeight來解決,程式碼如下 <template> <div class="