Android 版 Facebook SDK 更新日志

Android 版 Facebook SDK 的更新日志和版本说明。

5.0.0 及更高版本

有关 5.0.0 及更高版本的更新日志,请参阅 GitHub 上的 facebook/facebook-android-sdk/CHANGELOG.md

4.41.0 — 2019 年 3 月 8 日

Facebook SDK

添加内容

修改内容

已停用类:FacebookUninstallTracker

修复内容

4.40.0 - 2019 年 1 月 22 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.39.0 — 2018 年 12 月 5 日

Facebook SDK

添加内容

修改内容

  • 默认打开应用内购买自动记录功能。可以使用上传的凭证验证 Android 自动记录的购买事件。详细了解

修复内容

  • 修复了各种漏洞

4.38.1 — 2018 年 11 月 1 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了无代码设置的连接问题

4.38.0 — 2018 年 10 月 23 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.37.0 — 2018 年 9 月 27 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.36.1 — 2018 年 9 月 17 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.36.0 — 2018 年 8 月 29 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.35.0 — 2018 年 7 月 26 日

Facebook SDK

添加内容

  • 升级至 Facebook 图谱 API 3.1 版

修改内容

修复内容

  • 修复了各种漏洞。

4.34.0 — 2018 年 6 月 18 日

Facebook SDK

添加内容

  • 新增了营销模块以启用无代码应用事件记录功能。
  • 新增了 JavascriptInterface 和 augmentWebview 方法。采用混合模式的应用可借此通过 Pixel 像素代码发送 AppEvents(应用事件)。
  • 为 FBShareVideo 新增了 videoAsset 属性,以便合作伙伴使用 PHAsset 分享照片库中的视频。

修改内容

  • 提升与图谱 API 3.0 的兼容性。

修复内容

  • 修复了各种漏洞。

4.33.0 — 2018 年 5 月 1 日

Facebook SDK

添加内容

  • 升级至 Facebook 图谱 API 3.0 版
  • 新增 ACCESSTOKEN.ISCURRENTACCESSTOKENACTIVE() 简便方法。

修改内容

修复内容

  • 优化了不活跃登录的处理机制
  • 修复了各种漏洞

4.32.0 — 2018 年 4 月 11 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞 修复了 setUserId 和 updateUserPropertiesin (Android SDK) 中的竞态情况

4.31.0 — 2018 年 2 月 28 日

Facebook SDK

添加内容

修改内容

修复内容

  • 修复了各种漏洞

Account Kit

添加内容

修改内容

修复内容

  • 修复了各种漏洞

4.30.0 — 2018 年 1 月 24 日

Facebook SDK

添加内容

  • 防范路径遍历漏洞:https://support.google.com/faqs/answer/7496913
  • 支持在 Gradle 4.1 和 Android Studio 3.0 中进行变体感知依赖关系管理

修改内容

修复内容

  • 对 Messenger 分享功能进行了细微修改
  • 修复了各种漏洞

Account Kit

添加内容

  • 升级至 AccountKit 图谱 API 1.3 版

修改内容

  • 移除偏好设置 API
  • 更新了国家/地区代码选择列表和手机号输入

修复内容

  • 修复了新 JIO 号码的解析问题

4.29.0 — 2017 年 12 月 5 日

Facebook SDK

添加内容

  • 支持 Android Autofill(Android Oreo 中推出的一种新功能)

  • 新增了 Messenger 分享 SDK 功能:博文

修复内容

  • 发行针对 XCode 9 / iOS 11 SDK 的 bitcode

4.28.0 — 2017 年 11 月 7 日

Facebook SDK

添加内容

  • 发布新Facebook 登录码示例应用

修改内容

  • 应用邀请功能已停用。
  • 原生“赞”按钮已停用。

4.27.0 — 2017 年 9 月 26 日

Facebook SDK

添加内容

  • 应用内购买自动登录

修改内容

  • 对 Facebook SDK 进行了重构,将其整理为可以相互依赖的独立库/模块。
  • 将 GraphRequest.createOpenGraphObject(ShareOpenGraphObject) 移至 ShareGraphRequest.createOpenGraphObject(ShareOpenGraphObject)
  • 将 FacebookSDK.[set|get]WebDialogTheme(...) 移至 WebDialog.[set|get]WebDialogTheme(...)
  • 移除 styles.xml 中未使用的尺寸
  • 移除仅限内部测试使用的文件
  • 更新 proguard 文件

修复内容

  • 修复验证码输入屏幕上错误的键盘样式

Account Kit

修复内容

  • 漏洞修复和样本应用更新

4.26.0 — 2017 年 8 月 24 日

Facebook SDK

添加内容

  • 用于设备登录和分享的二维码

修复内容

  • 在请求配置时向 ExperimentationConfiguration 添加 null 检查。

Account Kit

添加内容

  • 现在可以在清单文件上选择默认语言,无需再包含英文翻译

修复内容

  • 较小的 UI 修复

4.25.0 — 2017 年 7 月 26 日

Facebook SDK

修复内容

  • 已更改 ShareDialog.canShow,以便在尝试将 ShareOpenGraphContent 中的本地图片分享到网页对话框时正确返回 false。

Audience Network

添加内容

  • 视频广告不再使用 Mediaplayer,而是转用 Exoplayer

修改内容

  • 更新 Google Play 服务和支持库依赖项的版本

修复内容

  • 修复了在激励视频广告播放结束后和结束画面显示之前,与屏幕互动发生崩溃的问题
  • 修复了系统未检测到广告编号时,最开始的展示没有填充广告的错误
  • 插屏广告旋转方向后,Exoplayer 不会再重播视频
  • 修复了视频插屏广告在旧版 Android 设备(4.2 以下)上崩溃的问题

Account Kit

添加内容

  • 如果 Google Play 服务可用,开发者不再需要 READ_PHONE_STATE 权限来自动填写设备的电话号码。
  • 如果 Google Play 服务可用,开发者不再需要 GET_ACCOUNTS 权限来自动填写设备的邮箱。
  • 邮箱实时验证

4.24.0 - 2017 年 6 月 26 日

Facebook SDK

修改内容

  • 新增参数,用于设置快捷登录提示条 (Toast) 的显示时长
  • 调用快捷登录成功时,可获取用户的个人主页。该功能需要设备已安装 Android 版 Facebook v131。
  • 为 AppEvent 类中的事件名称添加 MD5 校验和

Audience Network

添加内容

  • 禁用了 Exoplayer 上的媒体控制栏
  • 新增可跳过的关闭按钮及全新跳过按钮设计
  • 新增激励视频播放/暂停按钮设计

修改内容

  • 奖励式视频改进了 AdMetadata 大小/空间
  • 更改进度条颜色,使其匹配奖励式视频最末图片的行动号召按钮颜色

修复内容

  • 在主广告视图层级以外的视图可以再次点击。
  • 删除窗口状态更改时广告视图检查器的争用条件。

Account Kit

修复内容

  • 修复离开并返回 AccountKit 后读取短信失败的问题。

4.23.0 — 2017 年 5 月 25 日

Facebook SDK

添加内容

  • 新增取消注册登录回调支持

Audience Network

修复内容

  • 当应用从 Nexus 设备后台返回重启视频,视频播放出错时,重新尝试播放
  • 修复可跳过自动播放视频的“返回”按钮行为
  • 在记录器崩溃时刷新视频时间事件
  • 当 nativeConfigObject 为空对象时,将 nativeAdViewAttributes 设为 null
  • 修复了插屏广告展示回调在视频插播广告中被调用两次的问题
  • 修复在试图显示视频控件时视频出现暂停/播放的问题
  • 强制为视频插播广告的进度计数器添加颜色
  • 修复 AudienceNetworkActivity 中的内存泄漏问题

Account Kit

添加内容

  • 针对手机登录的场景,在国家/地区代码选择列表中新增了各国国旗

修复内容

  • 修复在尝试多次登录时发生崩溃的问题
  • 修复一些 UI 问题

4.22.1 — 2017 年 5 月 11 日

Facebook SDK

无更改。

Audience Network

无更改。

Account Kit

修复内容

  • 重发验证码页面 Null 指针崩溃。

4.22.0 - 2017 年 4 月 18 日

Facebook SDK

添加内容

  • 新增了地点图谱
  • Facebook 快捷登录:在登录管理工具中新增了检索登录状态功能。
  • 更新至使用图谱 API v2.9

修改内容

  • 更新智能登录功能的本地化内容
  • 停用了 FBSDKShareLinkContenttitledescriptioncaptionimage 字段。请采取适当的措施移除对它们的使用。

Account Kit

添加内容

  • 为手机号码新增语音备用验证。
  • 调用 logout(退出)端点以便退出

修改内容

  • 新增额外记录功能
  • 更新重发短信流程的用户体验
  • 改善了小屏幕体验
  • 移除 SkinManagerAdvancedUiManager 中必填的 LoginType 参数
  • 改善了披露文本在用户体验中的显示方式
  • 使用皮肤时无需设置 AppLoginTheme
  • 升级至使用 v1.2 Account Kit 图谱 API 版本

4.21.1 — 2017 年 4 月 6 日

Facebook SDK

无更改。

Audience Network

修复内容

  • 使用应用程序上下文初始化广告视图时的崩溃问题

Account Kit

无更改。

4.21.0 — 2017 年 4 月 4 日

Facebook SDK

无更改。

Audience Network

添加内容

  • 新增多项性能与稳定性优化。
  • 新增视频插屏广告设计(将逐步推出)。

修复内容

  • 未加载的网址引起的应用内浏览器崩溃问题
  • 为 Android 7 修复媒体播放器的内存泄漏问题

Account Kit

无更改。

4.20.0 — 2017 年 3 月 1 日

Facebook SDK

修改内容

  • 更新了 SmartLogin 对话框,并对其进行了本地化。
  • 推送口令现在会立即发送。请参阅更多详情文档

Audience Network

添加内容

  • 新增多项性能与稳定性优化。

修改内容

  • Android 清单中不再需要 AudienceNetworkActivity

修复内容

  • 修复原生广告轮播子项未触发 onAdClickedListener 的问题。
  • 修复在模拟器上点击原生广告轮播会出现崩溃的问题。

Account Kit

添加内容

  • 包括 4 种新的本地化语言。
  • 推出经典、现代和半透明皮肤,便于进行 UI 定制。

修改内容

  • 对旧代码添加停用标记。

修复内容

  • 修复了各种漏洞。

4.19.0 — 2017 年 1 月 25 日

Facebook SDK

修改内容

  • 现在,Facebook SDK 会在应用程序启动时自动初始化。大多数情况下,不再需要手动调用 FacebookSDK.sdkInitialize()。请参阅升级指南了解更多详情。
  • 现可在 SDK 初始化期间调用激活应用接口。如要禁用此功能,请按照升级指南中的说明操作。
  • 更新 LoginButton 的外观和风格。请参阅升级指南了解更多详情。

修复内容

  • ActivityLifecycleTracker 中可能存在的内存泄漏问题

Audience Network SDK

添加内容

  • 为 MediaView 添加了前台/后台监听器。

修复内容

  • 修复了在 Android API 18 以下版本的 NativeAdsManager 中的崩溃问题。
  • 视频播放结束时,MediaViewListener 中的 onComplete 方法现可正常调用。
  • 启动应用内浏览器时因协议不受支持而发生的崩溃问题。

Account Kit SDK

修改内容

  • 现在,Account Kit SDK 会在应用程序启动时自动初始化。大多数情况下,不再需要手动调用 AccountKit.initialize()。请参阅升级指南了解更多详情。
  • 将 Account Kit 即时身份验证按钮的默认值设置为“继续”

修复内容

  • 修复了 Android 7+ 在文件被标记为 WORLD_ 时抛出例外的崩溃漏洞
  • 输入屏幕中后退箭头的主题设计
  • 将验证码输入屏幕中的焦点设置到第一个输入字段
  • VI 翻译
  • 在特定设备上检查权限行为

添加内容

  • 记录国家/地区代码

4.18.0 — 2016 年 11 月 30 日

Facebook SDK

修改内容

  • 为 AppEventsLogger.handleResponse() 添加了空值检查。

Audience Network

修复内容

  • 修复了 adViewDidClick 在 FBInstreamAdView 中无法正确触发的问题
  • 修复了 UIRectCornerTopRight 和 UIRectCornerBottomRight 的 FBAdChoicesView 可展开动画异常问题

Account Kit SDK

修改内容

  • 添加了获取 AccountKitError 的 errorCode 时的空值检查。

4.17.0 — 2016 年 10 月 26 日

Facebook SDK

添加内容

  • setUserID 新增了 updateUserPropertiesFBAppEventsLogger。请参阅此处了解更多详情。
  • 为 Android TV/FireTV 应用添加了“智能登录”。详情请参阅此博文。使用这项新功能无需更改 API。

修改内容

  • 更新了 Android 支持库

修复内容

  • 修复了开放图谱分享中的用户标记问题。

Audience Network

修复内容

  • 修复了 SQLiteDatabaseLockedException

Account Kit

添加内容

  • 增加了电话号码登录的即时身份验证

修改内容

  • 改进了错误代码报告
  • 更新以使用 1.1 Account Kit 图谱端点
  • 更新了会话登录
  • 删除了取消回调

4.16.1 — 2016 年 10 月 7 日

Facebook SDK

修改内容

Audience Network

修复内容

  • 瞬时 ConcurrentModificationException
  • 与数据库指针相关的 StrictMode 警告

4.16.0 — 2016 年 9 月 27 日

Facebook SDK

添加内容

  • 已添加 FacebookSdk.setGraphApiVersion,以支持全局设置不同图谱 API 版本

修复内容

  • PR-483 修复了潜在的 DeadObjectExceptions 问题
  • PR-483 修复了潜在的 DeadObjectExceptions 问题
  • 更好地处理 webdialog 转轮的主题

Audience Network

添加内容

  • 应用内浏览器,以便在网页视图中打开链接式广告
  • InstreamVideoAdView 类,以支持视频插播广告版位

修改内容

  • 将视频缓存限制更新为 64MB,以便进行预提取
  • 在 MediaView 中弃用 setAutoplay 和 setAutoplayOnMobile

修复内容

  • 由关联 MediaView 引用的 LocalBroadcastReceiver 导致的内存泄露问题
  • 在设备上更新 WebView,同时同步 Cookie 时出现的 NullPointerException 异常

Account Kit SDK

添加内容

  • 添加计时器,用于向相同的手机号码发送新短信

修改内容

  • 内容语言和本地化更新
  • 更新小屏幕的用户体验
  • 将确认按钮从“Done”(完成)更改为“Next”(继续)

修复内容

  • 优先使用开发者提供的国家/地区代码,而非手机中的国家/地区代码
  • Lollipop 和更低版本设备中的矢量图
  • Lollipop 和更低版本设备中的键盘显示行为

4.15.0 — 2016 年 8 月 23 日

Facebook SDK

修改内容

  • PR-470 允许开发者在图谱请求的路径元素中指定查询参数
  • 与应用和游戏小组相关的类和方法已弃用
  • 修改设备登录用户界面,使用 Roboto 字体

修复内容

  • 更好地处理 Facebook 登录的 Chrome 自定义选项卡
  • 更好地处理磁盘损坏时的应用事件存留问题
  • PR-481 修复切换用户示例应用
  • 修复 Android 6.0 中的网页对话框旋转问题

Audience Network

修改内容

  • 改进视频稳定性并更新全屏用户界面

Account Kit SDK

修改内容

  • 将 PNG 图片转换为矢量图,从而缩减 SDK 体积
  • 添加在样本 defaultConfig 中指定翻译区域的示例
  • 更新初始进入屏幕的披露字符串

修复内容

  • 修复了旧版设备上因检查设备权限导致的 RuntimeException 问题

4.14.1 — 2016 年 8 月 4 日

Audience Network

修复内容

  • 修复因 4.14.0 POM 文件无效导致的 Gradle 远程依赖异常

4.14.0 — 2016 年 7 月 13 日

Facebook SDK

添加内容

  • 未安装 Android 版 Facebook 应用时,此版本的 SDK 会自动将 Facebook Lite 应用 v11 及更高版本用于登录流程

修改内容

修复内容

  • 修复应用事件无效导致应用事件记录失败的问题

Audience Network

修复内容

  • 修复活动在锁键盘功能下显示时产生的展示记录问题

4.13.2 — 2016 年 7 月 1 日

Facebook SDK

修复内容

  • 修复切换活动后临时应用事件会丢失的问题

Account Kit SDK

修复内容

  • 登录期间的 NPE 问题

4.13.1 — 2016 年 6 月 17 日

Facebook SDK

修复内容

  • 修复 AppEventsLogger 空指针异常问题

4.13.0 — 2016 年 6 月 15 日

Facebook SDK

修改内容

  • 保持 Chrome 公测版和开发者版本中的 Chrome 自定义选项卡为打开状态
  • 实现 Chrome 自定义选项卡访问口令适用于网页视图对话框
  • 通过 AppEventsLogger 在 activateApp 中显式记录安装事件

修复内容

  • 修复应用事件记录器中的活动遗漏问题
  • 修复 AppEventsLogger 中可能的死锁问题
  • 修复翻译中的 %@ 问题
  • 修复了以下问题:在进行反序列化时无法找到类 com.facebook.login.LoginClient$Request
  • PR 476 - 未找到正确签名时会快速失败。

Account Kit SDK

修改内容

  • 将大部分图片素材绘制为矢量图而非 PNG,以缩减 SDK 大小

修复内容

  • 通过 https://developers.facebook.com/bugs/1091582134248501/ 修复下一步按钮的切换问题
  • 修复了 SDK 未初始化时的错误提示,使其与正确方法名对应
  • 修复了手机登录界面的韩语翻译问题

4.12.1 — 2016 年 5 月 26 日

Facebook SDK

修复内容

  • 读取 HttpURLConnection 的 responseCode 时,较旧 Android 设备返回 NoSuchAlgorithmException

Audience Network

修改内容

  • 移除使用 X509TrustManager 来处理 Google Play 警告

修复内容

  • AdQuality 缺少依存项错误
  • 特定设备上阻止 MediaPlayer 恢复播放的漏洞

4.12.0 — 2016 年 5 月 20 日

Facebook SDK

修改内容

  • 仅在存在应用事件需要刷新时才会执行应用事件刷新操作,而非每 15 秒执行一次。
  • 现在,初始登录流程将传递“rerequest”标记,以便在登录对话框中显示之前已被拒绝的权限请求
  • 改用 gradle 2.10
  • 已将访问口令来源从 CUSTOM_TAB 更改为 CHROME_CUSTOM_TAB
  • 已停用 AppLinkData.ARGUMENTS_TAPTIME_KEY
  • 向 Facebook SDK 库的 AndroidManifest 添加 FacebookActivity 和 ChromeCustomTabsActivity。

修复内容

  • 修复了 ShareDialog 中未安装 Facebook 应用时无法分享引文的问题。
  • Proguard 去掉序列化信息会导致在特定情况下,将应用事件序列化至磁盘时出现异常。
  • 损坏的应用事件缓存文件无法自动清理
  • 在完成分享或登录后启动应用可能出现崩溃,在登录或分享时应用被关闭。
  • 修复了部分魅族设备上存在的安全问题和 NPE 问题

Audience Network

修复内容

  • 因子视图数量无效导致的 RecyclerView 崩溃问题
  • MPA 子 adListeners 未调用的漏洞

Account Kit

添加内容

  • 在邮件登录尝试时指定 redirect_uri,向用户展示一个按钮,提示他们在确认后打开应用

修复内容

  • 接受末尾带空格的电子邮箱
  • 修复了取消请求后,轮询电子邮件确认时可能出现的竞态情况

4.11.0 — 2016 年 4 月 12 日

Facebook SDK

添加内容

  • 添加了 AppEventsLogger.setPushNotificationsRegistrationIdAppEventsLogger.logPush*。请参阅推送通知了解更多详情。
  • 添加了 ShareHashtag,以支持分享话题标签。详情请参阅 Android 分享
  • 新增了 ShareMediaContent 以支持分享混合内容(例如照片和视频)。详情请参阅 Android 分享
  • 新增了 ShareLinkContent.Builder.setQuote 以支持从链接分享引文。详情请参阅 Android 分享
  • 添加了 AppInviteContent.setPromotionDetailsAppLinkData.getPromotionCode,以便在应用邀请中轻松加入优惠码。请参阅应用邀请了解更多详情。
  • 添加了 AppEventsLogger.activateApp(Application) 以大幅简化 Facebook 分析的使用流程。应从应用程序的 onCreate 调用此方法,而非在每个活动内调用。详情请参阅应用事件
  • 添加了 DeviceLoginButton,用于设备流程身份验证,并支持设置重定向 URI。
  • 添加了 DeviceLoginManager,用于设备流程身份验证,并支持设置重定向 URI。

修改内容

  • 更新至使用图谱 API v2.6
  • 提升了 AppEvents 中的会话追踪精度,包括一个用于确定会话超时阈值的可配置值(位于应用的 Facebook 分析设置中)。
  • 若未安装 Facebook 应用,SDK 会自动将 Chrome 自定义选项卡用于登录流程。

修复内容

  • 修复通过网页视图发出的口令不会自动刷新的问题。
  • PR-459

Audience Network

添加内容

  • 为原生广告添加了视频预缓存支持

修改内容

  • 修改了多商品广告的背景色和加载图块颜色

修复内容

  • 修复了多商品广告的图片预缓存

Account Kit

应用内通知

4.10.1 - 2016 年 3 月 18 日

Facebook SDK

修改内容

  • 更新了支持库版本。

修复内容

  • 修复通过网页视图发出的口令不会自动刷新的问题。

Audience Network

修复内容

  • 移除重叠视图检查以恢复展示。

4.10.0 — 2016 年 2 月 10 日

Facebook SDK

修改内容

  • 不再需要 multidex
  • 撤销了 4.9.0 版本中默认在所有图谱请求中传递区域设置的更改。你仍然可以通过手动指定 locale(区域)字段获得本地化结果。

Audience Network

添加内容

  • 为 MediaView 添加了多商品广告支持。
  • 添加 AAR 包,删除 JAR 包。
  • 添加 consumerProugardFile 规则,以便忽略适配程序警告。

修复内容

  • 修复 BlurBorderImage 高度计算中的崩溃问题。
  • 现在,将在缓冲视频时显示加载转轮。

移除内容

  • JAR 包。

4.9.0 — 2016 年 1 月 13 日

Facebook SDK

添加内容

  • 新增了对 Fire TV 和 Android TV 的支持。请参阅与 Android TV 和 Fire TV 集成
    • 新设备身份验证登录行为。
    • 现在,“登录”、“发送”、“分享”和“赞”按钮可通过键盘或远程输入使用。

修改内容

  • 现在,设备的区域信息将随所有图谱请求一同发送。因此,图谱 API 发送的结果将根据用户当前的区域完成本地化。

修复内容

  • 修复了登录过程中,误触进度对话框外部区域会导致登录流程被取消的问题。
  • 修复了在 SDK 初始化之后不调用回调的问题。PR 452
  • 修复了 listFile 访问时可能出现的 NPE (PR 454)
  • 修复了“赞”按钮社交语句,使之符合区域设置。
  • 修复 SDK 初始化过程中的潜在争用条件
  • 修复 FBSDKLikeControl 的社交语句,使之符合区域设置。

Audience Network

添加内容

  • 优化了视频加载状态的处理逻辑,包括封面图片和加载旋转图标。

修复内容

  • 修复会导致 IllegalStateException 异常的表面纹理分离相关漏洞。
  • 修复广告标题为 null 时导致崩溃的漏洞。

移除内容

  • 移除 MediaView 的 VideoView 支持。此项变化只会影响 Honeycomb 及更早的版本。

4.8.2 — 2015 年 11 月 23 日

Facebook SDK

添加内容

  • 为访问口令追踪器刷新方法添加回调。

Audience Network

修复内容

  • 修复 MediaView 在禁用自动播放后崩溃的问题。

4.8.1 — 2015 年 11 月 11 日

Facebook SDK

修复内容

  • 在未附加于片段的“发送”/“分享”按钮上设置分享内容时出现的 NPE(空指针异常)。

Audience Network

无更改

4.8.0 — 2015 年 11 月 11 日

Facebook SDK

添加内容

  • 支持结合原生片段 (android.app.Fragment) 使用登录管理工具和界面元素

修复内容

  • 修复连接在出现异常时中断的漏洞

修改内容

  • 设置主题现可应用于所有网页视图。不仅是登录网页视图 (PR 448)
  • 更新 Scrumptious 应用,以便能与原生片段一同运行,而不是与支持片段一同运行

Audience Network

修复内容

  • 向浏览器 intent(意图)添加 EXTRA_APPLICATION_ID,以便在点击广告时重复使用选项卡
  • 修复未发布的视频播放器导致的 IllegalStateException 异常
  • 修复插屏广告的方向问题,强制按预设方向显示

修改内容

  • 已将 Apache HTTP 替换为第三方 AndroidHttpClient

4.7.0 — 2015 年 10 月 7 日

Facebook SDK

修复内容

  • 创建含空 ActionType 的 GameRequestContent 时可能出现 NPE (PR 445)

修改内容

  • 改用图谱 API v2.5
  • 目标 Android API 级别现为 23
  • 弃用 GameRequestContent 中的“to”成员,替换为“recipients”成员。PR 445
  • 现在,developers.facebook.com 网站的下载包将包括 Android 版 Facebook SDK 的 aar 文件,而非源代码。源代码和示例仍在 github 上提供。

Audience Network

修复内容

  • 修复创建 NativeAdManagers 时出现的内存泄露问题
  • 修复原生广告注册中的内存泄露问题
  • 修复全屏视频播放器中的内存泄露问题
  • 修复 API 14 以前设备无法正确播放视频的问题
  • 修复展示记录漏洞

修改内容

  • 目标 Android API 级别现为 23

4.6.0 — 2015 年 9 月 10 日

Facebook SDK

添加内容

  • 添加用于从 intent(意图)创建 AppLinkData 对象的 API。

修复内容

  • 已修复通过反射获取标识符的问题。(PR-441)
  • 修复 sdk 初始化期间的严格模式违反情形。
  • 修复在后台线程发送图谱请求和调用分享 API 失败的问题。
  • 向 share model(共享模型)类添加缺失的 CREATOR。(PR-436)
  • 修复在应用程序编号前添加 fb 前缀时无效的问题。(PR-438)

修改内容

  • 分享内容无法分享时,自动禁用“发送”和“分享”按钮。
  • 最低的 Android 版 SDK 现在是 v15

Audience Network

注意:Facebook 已在适用于 Android 平台的 Audience Network jar 版本 4.6 中发现了展示记录漏洞,这个漏洞可导致较低的展示次数和收入。已在版本 4.7 中解决此漏洞,强烈建议升级到此版本。

修复内容

  • 优化了 MediaView 内容的加载性能
  • 修复了 MediaView 中的内存泄漏问题

4.5.1 — 2015 年 8 月 13 日

Audience Network

修复内容

  • 修复 MediaView 与大屏幕设备的兼容性问题

4.5.0 — 2015 年 8 月 10 日

Facebook SDK

添加内容

  • 已为“赞”、“分享”、“发送”和“登录”按钮点击添加 AppEvent 事件自动记录功能。
  • 已添加新的“Share It”示例应用。
  • 已在 AndroidManifest.xml 中添加为应用编号添加前缀“fb”的功能。(PR-435)

修复内容

  • 修复主页赞的“赞”按钮不会始终显示为“赞了”的问题。
  • 修复未向 CreateAppGroup 对话框提供应用组隐私时出现的 NPE 异常。
  • 修复用户设备既没有 Facebook 应用也没有浏览器时应用崩溃的问题。
  • 修复 AndroidManifest.xml 中应用编号的整数溢出问题 (PR-435)

Audience Network

添加内容

  • 已为 MediaView 添加原生视频支持

修改内容

  • AdChoicesView 现已默认仅展示可点击文本,同时保留可选配置,支持沿用原有可展开图标样式

修复内容

  • WebViews 现在使用 ApplicationContext,以避免内存泄露。
  • 修复旧版 Android 中 View.getLocationOnScreen 的 NPE 异常

4.4.1 — 2015 年 7 月 13 日

Audience Network

修复内容

  • 防止在客户端上触发 onError 时对插屏广告和原生广告格式自动刷新
  • 防止在关闭屏幕后对横幅广告格式自动刷新
  • 解析无效的请求参数错误
  • 导致“Ad is not ready”(广告未准备好)异常的罕见争用情形

4.4.0 — 2015 年 7 月 8 日

Facebook SDK

添加内容

  • 添加回调函数,在 FacebookSdk.sdkInitialize 完全完成时执行回调
  • 为 GraphRequest 类添加照片上传辅助方法。

修改内容

  • 将默认的图谱 API 版本更新为 2.4。现在,开发者需要在所有图谱 API 端点内明确请求字段(例如:姓名、地点等)。
  • 已更改 LoginBehavior 枚举的名称,能够更好地表示实际的登录行为。

修复内容

  • 因无网络导致的登录失败现在将调用 onError,而非 onCancel。

Audience Network

修复内容

  • 修复 DownloadImageTask 的 OutOfMemoryError 问题

4.3.0 — 2015 年 6 月 25 日

Facebook SDK

添加内容

  • 将通过远程服务检索 Google 广告主。

修改内容

  • 升级至 roboelectric 3
  • 将示例的命名空间从 com.facebook 更改为 com.example
  • 停用了 SharePhoto 和 ShareVideo 的参数。在需要传递参数的场景下,使用 GraphRequest 分享视频和照片。
  • 已更新 buck 构建。(PR 426 和 423)

修复内容

  • Hello Facebook 示例应用通过对话框分享时请求不必要的权限。
  • 在创建登录记录器时,当上下文为空时出现的 NPE 异常。(PR 430)

Audience Network

修复内容

  • 当设备旗标“Do not keep activities”(不要保留活动)开启时,由返回按钮触发的插播网页崩溃
  • 明确针对 Android 5.0 的应用中的混合内容 WebView 漏洞
  • WebView 被破坏后,调用 activateAd() 导致 WebView 崩溃

4.2.0 — 2015 年 5 月 28 日

Facebook SDK

添加内容

  • 向 ShareApi 添加图谱节点,向照片/视频添加参数
  • 新增 Gradle 2.4 支持
  • 新增翻译
  • Iconicus Applinks 示例
  • 支持指定 WebDialog 用于登录的主题。
  • 关于设备的访问权限非唯一信息将与应用事件一同发送,以改善 Facebook 分析报告。

修改内容

  • 从 LoginButton 删除自定义请求代码
  • 将 Gradle 更新至 2.4 版本 (PR 421)
  • 将 Android 工具更新至 1.2.3 版本
  • 移除 jcandksolutions android-unit-test
  • 将“分享”、“发送”和“登录”按钮中 onClickListeners 的调用移动至操作处理的开头,而非末尾。

修复内容

  • 登录管理工具在登录完成后保持上下文的内存泄漏问题。
  • 修复多层次上下文包装程序拆包的问题 (PR 419)。
  • 现在,视图可在 android studio 设计器中使用
  • 在 OpenGraphShareContent 中设置 peopleIds(用户编号)或 placeId(地点编号)失败的问题。
  • 视频分享无法通过原生对话框分享某些内容 URI。

Audience Network

修复内容

  • 修复一些应用在展示插屏广告时发生异常的问题

4.1.2 — 2015 年 5 月 14 日

Facebook SDK

修复内容

  • 通过 ShareApi 分享开放图谱对象无法正确展示嵌套对象。
  • 某些情况下,在登录流程中错误地调用 OnCancel。

Audience Network

无更改

4.1.1 — 2015 年 5 月 6 日

Facebook SDK

修复内容

  • 通过 ShareApi 分享的所有开放图谱内容都要求 user_messages 权限。
  • 无法通过 ShareApi 分享包含文件 URI 而非内容 URI 的视频。

Audience Network

修复内容

  • 空用户代理导致的空指针异常。
  • 模糊处理原生广告模板的图片时捕获 OutOfMemoryErrors。
  • 模糊处理原生广告模板的图片时捕获所有错误。
  • 模糊处理原生广告模板的图片时,使用较少的内存。

4.1.0 — 2015 年 4 月 30 日

Facebook SDK

添加内容

  • 添加新方法用于刷新访问口令的权限。
  • 已向游戏请求结果添加请求接收人。
  • 支持为 SharePhoto 对象添加说明。
  • 支持以更可靠的方式上传更大的视频。
  • 支持重试视频上传。
  • 对缺失的清单条目进行校验。
  • 可在从自定义对话框调用 ShareApi 时提供消息。
  • 通过 scrumptious 内的分享 API 分享时显示进程对话框。
  • 使用命名空间的样式属性标签。
  • Travis CI 支持。

修复内容

  • 用户看见“Failed to find provider info for com.facebook.katana.provider.AttributionIdProvider”(无法找到 com.facebook.katana.provider.AttributionIdProvider 的提供者信息)消息的问题。
  • 传递没有访问口令的意图时,createFromNativeLinkingIntent 发生崩溃的问题。
  • 快速取消登录时出现空指针异常。
  • 退出时未清除网页视图 Cookie 的漏洞。
  • Scrumptious 应用中位置选择器的漏洞。
  • 对发布内容用的 ShareApi 实施严格的权限检查。
  • 记录应用安装事件时未记录应用版本的问题。
  • Scrumptious 无法分享相机拍摄的照片,只能从图库中选择图片。
  • 修复网页对话框创建失败时支持库中发生的崩溃。
  • 修复访问口令不为空时无法设置不同权限的漏洞。
  • 修复将应用编号放在 AndroidManifest.xml 而非资源文件内时,无法解析应用编号的缺陷。
  • 修复阻止将 fb:explicitly_shared 用于开放图谱操作的漏洞。
  • 拉取请求 411:错误消息引用的是 LoginActivity 而非 FacebookActivity。
  • 拉取请求 415:WebView 中的内存泄漏问题。

此版本有一些重大更改。详情请参阅升级指南。将 Android SDK 从 4.0.1 升级到 4.1.0 版本

Audience Network

添加内容

  • NativeAdsManager,用于辅助批量广告检索。
  • NativeAdView,提供可配置的原生广告视图模板(通过 NativeAdViewAttributes 对象配置)
  • 添加 NativeAdScrollView,可提供水平滚动体验,并显示 NativeAdViews(原生广告视图)或自定义视图。
  • 辅助视图,帮助实现原生广告:
    • AdChoicesView,用于向自定义原生视图添加可扩展的广告选项图标
    • MediaView,负责处理 NativeAd 图片的下载和显示,同时保持宽高比不变

修改内容

  • 改善示例应用,展示 NativeAdView 模板

修复内容

  • 修复了各类零星的漏洞

4.0.1 — 2015 年 4 月 2 日

Facebook SDK

添加内容

  • 为 Scrumptious 添加显式横向布局。
  • 可在布局内设置 LoginButton 的 tooltip_mode 属性。

修复内容

  • 更新了应用设置,以便 FacebookSdk 上的执行器进行获取。
  • 更新了 LoginButton NUX 设置,以便 FacebookSdk 上的执行器进行获取。
  • “登录”按钮已更新,以正确衡量其尺寸。
  • 修复通过 ShareApi 上传视频的问题。
  • 将在 GingerBread 设备内始终禁用与主页编号关联的 LikeViews。

4.0 — 2015 年 3 月 25 日

Android 版 Facebook SDK 版本 4.0 是一次重大的版本升级,其主要特点是:

  • 改进了登录编程模型。
  • 改进了分享编程模型,且增加了多种无需访问口令的分享方式。
  • 改善了错误处理和错误恢复机制。
  • 现在,开发者可以通过 SDK 在整个项目内运行 ProGuard,减少最终 APK 内的内存占用。

这是 SDK v3.x 与 v4.0 的主要区别。有关升级的详细信息,请参阅 将 Android SDK 从 3.x 升级至 4.x

Facebook SDK

添加内容

登录:

分享:

  • ShareApi 类,以便通过图谱 API 分享内容。

对话框:

  • 强类型对话框类 - 用于应用邀请、应用小组创建、应用小组加入、游戏请求、消息和分享。每个 *Dialog 类都有一个关联的 *Content 类,并且该类带有 Builder,以便你轻松设置参数。

修改内容

  • 已停用 - 3.x 中标记为 @deprecated 的所有类或方法均已移除。一些特定于功能的类已移入各自的包中,如 com.facebook.logincom.facebook.share

  • 图谱 API - 已删除 GraphObjectOpenGraphObjectOpenGraphAction 类,支持直接使用 JSON 对象。使用 OG 对象/操作进行分享的应用仍可使用 ShareOpenGraphObjectShareOpenGraphAction 类中的辅助方法来构建 OG 对象/操作。这让开发者可以在整个项目内使用 ProGuard。

  • UiLifecycleHelper 已移除 - 此项已移除,用于传递登录或对话框结果的各种 onActivityResulthandleOnActivityResult 调用现在位于 CallbackManager 类中。

  • LoginFragment - 已移除。

  • 选择工具片段 - 已移除。

分享:

  • 分享类 - 许多分享类型均经过修改。请参阅 Android 分享

  • 对话框更改 - 所有 *Dialog 类均已转换为使用 FacebookCallbackCallbackManager

  • 自动网页回退机制 - 如果设备上没有 Facebook 应用,ShareDialogAppInviteDialog 会自动回退到使用网页对话框。请参阅 Android 分享、内置分享回退

登录:

  • AccessToken 现已包含 userId

  • 替换类 - SessionUserSettingsFragment 已移除并替换为 LoginManagerAccessToken 类。LoginActivity 被替换为 FacebookActivity

错误处理