应用程序间跳转和社交分享

作者: Mg明明就是你 | 来源:发表于2016-04-27 23:12 被阅读244次

一. 应用程序间跳转

1. 什么是应用间跳转,有什么作用?

- 应用场景
    1. 使用第三方用户登录,需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名"
    2. 应用程序推广,网易彩票,设置-推荐应用-有很多应用程序图标如果本机已经安装过,会直接跳转到另外一个应用程序, 软件的广告,推广结果,后续会有一些列的金钱上的结算
    3. 支付宝,第三方支付,淘宝,电话费充值。。。

2. 应用程序间跳转实现?

直接打开对应APP的scheme即可

  1. 概念须知

     > URL : 统一资源定位符
         scheme(协议头) : 决定通过什么方式查找资源 http:// ftp:// tel:// file://
         path(路径) : 资源路径 www.baidu.com 192.168.1.1/资源 110 /User/Desktop
    
  2. 设置方式

     > 默认情况下应用程序是没有自己的URL的,如果想要拥有自己的URL,需要设置URL
         项目 -> info -> URL Types -> URL Scheme
    
  3. 打开方式

     代码:
         [[UIApplication shareApplication] openURL:appURL];
    
  4. 跳转到对方APP, 对方APP执行的代理方法

     -(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
     {
     
     }
    
  5. iOS9.0跳转适配
    在info.plist文件中添加LSApplicationQueriesSchemes 字段 ,是数组类型

6.具体操作流程

跳转的代码如下:
1. 应用场景
上面已经说明

2. 要打开本机上的其他应用程序,需要设置schemes,自定义的协议头,可以打开其他的应用程序
- (IBAction)openWangyi:(id)sender
{
    // 跳转到其他应用程序
    // schemes: 网易的scheme wangyi
    NSURL *url = [NSURL URLWithString:@"wangyi://view?newsid=201410130001"];
    
    // 判断本机是否安装了目标程序
    if ([[UIApplication sharedApplication] canOpenURL:url]) {
        [[UIApplication sharedApplication] openURL:url];
    } else {
        NSLog(@"没有安装,可以再给定下载地址,前往");
    }
}

3. 新浪微博的授权界面说明:
1> 在新浪微博中,本身不能直接跳转到该界面
2> 用其他应用程序打开时,如果scheme时weibo://oaauth,直接进入此界面
3> 如果直接点击,返回,返回调用的应用程序
4> 如果点击表格行中的用户名,直接返回用户信息给调用应用程序


4. 如果要返回调用的应用程序,需要知道调用我们的应用程序的scheme
// 旧方法
/** 只要是由其他应用程序打开的,就会调用此方法 */
/** URL 就是其他应用程序,打开当前程序使用的URL */
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

// 新方法
/** 
 openURL 是打开当前应用程序的url
 sourceApplication 是当开当前应用程序的源程序的BundleId
 
 提示:一旦重写了新方法,旧方法就不再被执行
 但是:很多第三方框架,都建议两个方法全都写
 */
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation```
---

# 二. 社交分享
### 1. 什么是社交分享, 有什么作用?
    
    - 通过用户的分享,让更多的人去了解和使用这个App
    - 目前移动互联网应用程序推广的最重要手段之一
    - 属于口碑营销的范畴,经典成功案例是《疯狂猜图》

### 2. 社交分享的实现方案
- 1.系统自带社交分享

        1. 导入Social.framework
        
        2. 判断服务是否可用
            [SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo];
            
        3. 弹出分享内容输入界面
            SLComposeViewController *cc = \[SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
            [self presentViewController:cc animated:YES completion:nil];
            
        4. 额外设置
            [cc setInitialText:@"测试文字"]; // 初始化文字
            [cc addImage:[UIImage imageNamed:@"lufy"]]; // 配图

- 2.第三方SDK实现(友盟分享)
下载地址: [http://www.umeng.com/]
        1. 申请账号,创建应用
        2. 下载SDK
        3. 参照集成文档


- 3.社交分享的一些建议
  - 远程通知-由服务器、开发商向用户推送消息
  - 社交分享-App的用户主动分享他们的经验和心得 - 口碑营销

========================================================
SSO - 目前在国内使用比较多,如果本机安装了某个应用程序,会直接进入该应用程序获得授权。

URL Schemes填"sina."+你的友盟AppKey.实现下面两个系统回调:========================================================

强烈推荐大家使用的框架:友盟的统计分析
关注官方网站:http://bbs.umeng.com/forum-social-1.html

相关文章

  • 应用程序间跳转和社交分享

    一. 应用程序间跳转 1. 什么是应用间跳转,有什么作用? 2. 应用程序间跳转实现? 直接打开对应APP的sch...

  • 11-UI补充(2)

    0813-应用跳转、社交分、享推送通知 应用跳转 要点(04-应用间跳转跳转到固定界面和返回应用程序) 流程:...

  • iOS实用技术文集目录

    真机调试 打包测试 程序发布 内购 广告 推送通知 应用程序间跳转 社交分享 内存分析 换肤 硬件信息的获取 静态...

  • 社交分享 应用间跳转

    通过用户的分享,让更多的人去了解和使用这个APP 目前移动互联网应用程序推广的重要手段之一 属于口碑营销的范围在i...

  • 应用程序间跳转

    应用程序间跳转 1. 什么是应用间跳转,有什么作用? 2. 应用程序间跳转实现? 直接打开对应APP的scheme...

  • 应用程序间跳转

    第一个APP 添加标记 添加白名单 设置跳转url和返回标记 跳转到其他APP的指定页面 第二个APP 设置标记和...

  • 应用间跳转(Swift)

    一.应用跳转的介绍 1.应用间跳转即从一个应用程序跳转到另一个应用程序 2.应用间跳转的应用:1.应用推荐2.支付...

  • iOS应用程序间的跳转

    一.从应用A直接跳转到应用B 以应用A(网易)与应用B(微信)说明,网易应用跳转至微信应用; 1.设置应用B的UR...

  • 看别人博客留存的重要知识:iOS应用程序间相互跳转

    应用间相互跳转简介 在iOS开发的过程中,我们经常会遇到需要从一个应用程序A跳转到另一个应用程序B的场景。这就需要...

  • 百度地图/社交分享/应用间的跳转

    百度地图 导航画线本质上是在mapView上添加遮盖物。数据交由苹果处理(苹果找高德地图) 画线可以分为三大步骤,...

网友评论

    本文标题:应用程序间跳转和社交分享

    本文链接:https://www.haomeiwen.com/subject/hjocrttx.html