App應用程序互相跳轉(zhuǎn)

1. 應用場景

1) 使用第三方用戶登錄竭鞍,需要用戶授權(quán)滨砍,還需要"返回到調(diào)用的程序绒窑,同時返回授權(quán)的用戶名"

2) 應用程序推廣钦铺,網(wǎng)易彩票沼本,設置-推薦應用-有很多應用程序圖標
-如果本機已經(jīng)安裝過辫红,會直接跳轉(zhuǎn)到另外一個應用程序
-軟件的廣告揍瑟,推廣結(jié)果底循,后續(xù)會有一些列的金錢上的結(jié)算

  1. 支付寶,第三方支付,淘寶,電話費充值。。蜻展。

2. 要打開本機上的其他應用程序敷矫,需要設置schemes怎茫,自定義的協(xié)議頭虫埂,可以打開其他的應用程序

你也許會遇到一下問題:

1、 canOpenURL 方法不執(zhí)行?

2、“This app is not allowed to query for scheme xxx”

3新博、“This app is not allowed to query for scheme xxx”

.官網(wǎng)的解釋:(就是在info.plist 文件里添加 LSApplicationQueriesSchemes)

If you call the “canOpenURL” method on a URL that is not in your whitelist, it will return “NO”, even if there is an app installed that has registered to handle this scheme. A “This app is not allowed to query for scheme xxx” syslog entry will appear.

If you call the “openURL” method on a URL that is not in your whitelist, it will fail silently. A “This app is not allowed to query for scheme xxx” syslog entry will appear.

在info.plist文件里,添加

 <key>LSApplicationQueriesSchemes</key>
 <array>
 <string>urlscheme1</string>
 <string>urlscheme2</string>
 <string>urlscheme3</string>
 <string>urlscheme4</string>
</array> 

跳轉(zhuǎn)的代碼如下:

- (IBAction)openWangyi:(id)sender
 {
// 跳轉(zhuǎn)到其他應用程序
// schemes: 網(wǎng)易的scheme wangyi
NSURL *url = [NSURL URLWithString:@"wangyi://view?newsid=201410130001"];

// 判斷本機是否安裝了目標程序
if ([[UIApplication sharedApplication] canOpenURL:url]) {
   // [[UIApplication sharedApplication] openURL:url];// 過時方法,沒效果
  [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil];
} else {
    NSLog(@"沒有安裝,可以再給定下載地址,前往");
  }
}

判斷設備是否安裝了某個app胡本,在info.plist 文件添加:例如 app的名字:testA

  <key>CFBundleURLTypes</key>
  <array>
<dict>
    <key>CFBundleURLSchemes</key>
    <array>
        <string>testA</string>
    </array>
</dict>
</array>

IOS 推薦使用咒锻,一下方法打開app
[[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil];

3. 新浪微博的授權(quán)界面說明:

1> 在新浪微博中思灌,本身不能直接跳轉(zhuǎn)到該界面
2> 用其他應用程序打開時,如果scheme時weibo://oaauth,直接進入此界面
3> 如果直接點擊搬俊,返回腹缩,返回調(diào)用放應用程序
4> 如果點擊表格行中的用戶名盘寡,直接返回用戶信息給調(diào)用應用程序

4. 如果要返回調(diào)用的應用程序变隔,需要知道調(diào)用我們的應用程序的scheme

/** 只要是由其他應用程序打開的,就會調(diào)用此方法 /
/
* URL 就是其他應用程序,打開當前程序使用的URL */
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

openURL 是打開當前應用程序的url
sourceApplication 是當開當前應用程序的源程序的BundleId

提示:一旦重寫了新方法进胯,舊方法就不再被執(zhí)行
但是:很多第三方框架,都建議兩個方法全都寫

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

5竭宰、如何傳參數(shù)廓旬?

1旁赊、其實它的傳參數(shù),是在 @":// " , 后面的。它的作用是嗽上,根據(jù)參數(shù)做想要的做的邏輯逐沙。
2忆嗜、點擊跳轉(zhuǎn)時途样,首先會調(diào)用該方法条辟,所以,最先在該方法里做邏輯判斷鹰祸。
3、你可以根據(jù) 下面的方法去獲取:

  - (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options

注意一下:是舊設備的話,需要使用舊的方法,否則會閃退澜沟,不知道是Xcode 8的原因還是班缰,設備的原因,模擬器是不會閃退莹妒。 推薦開發(fā)時使用新舊方法,這樣就可以滿足不同的設備了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市祈秕,隨后出現(xiàn)的幾起案子获印,更是在濱河造成了極大的恐慌,老刑警劉巖碰酝,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件球匕,死亡現(xiàn)場離奇詭異纹磺,居然都是意外死亡,警方通過查閱死者的電腦和手機亮曹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門爽航,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人乾忱,你說我怎么就攤上這事讥珍。” “怎么了窄瘟?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵衷佃,是天一觀的道長。 經(jīng)常有香客問我蹄葱,道長氏义,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任图云,我火速辦了婚禮惯悠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘竣况。我一直安慰自己克婶,他們只是感情好,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著情萤,像睡著了一般鸭蛙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上筋岛,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天娶视,我揣著相機與錄音,去河邊找鬼睁宰。 笑死肪获,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的柒傻。 我是一名探鬼主播贪磺,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼诅愚!你這毒婦竟也來了寒锚?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤违孝,失蹤者是張志新(化名)和其女友劉穎刹前,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體雌桑,經(jīng)...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡喇喉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了校坑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拣技。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖耍目,靈堂內(nèi)的尸體忽然破棺而出膏斤,到底是詐尸還是另有隱情,我是刑警寧澤邪驮,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布莫辨,位于F島的核電站,受9級特大地震影響毅访,放射性物質(zhì)發(fā)生泄漏沮榜。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一喻粹、第九天 我趴在偏房一處隱蔽的房頂上張望蟆融。 院中可真熱鬧,春花似錦守呜、人聲如沸型酥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冕末。三九已至萍歉,卻和暖如春侣颂,著一層夾襖步出監(jiān)牢的瞬間档桃,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工憔晒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留藻肄,地道東北人。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓拒担,卻偏偏與公主長得像嘹屯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子从撼,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內(nèi)容