搜索插件、代码仓与 APP 分类

GitHub 代码仓RxReader/tencent_kit

tencent_kit

Flutter版QQ登录/分享

tencent_kit 项目封面
星标
279
复刻
99
最近推送(UTC)
2025年6月16日
项目状态
未归档

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

tencent_kit

Pub Package License

Flutter 版腾讯(QQ)SDK

相关工具

Dart/Flutter Pub 私服

相关文档

开始使用

Android
# 不需要做任何额外接入工作
# 配置已集成到脚本里
# 混淆已打入 Library,随 Library 引用,自动添加到 apk 打包混淆
iOS

暂不支持 SceneDelegate,详见文档 iOS_SDK环境搭建

# 不需要做任何额外接入工作
# 配置已集成到脚本里
  • Universal Links

apple-app-site-association - 通过 https://${your applinks domain}/.well-known/apple-app-site-association 链接可访问

示例:

https://${your applinks domain}/universal_link/${example_app}/qq_conn/${appId}

{
  "applinks": {
    "apps": [],
    "details": [
      {
        "appID": "${your team id}.${your app bundle id}",
        "paths": [
          "/universal_link/${example_app}/qq_conn/${your tencent app id}/*"
        ]
      }
    ]
  }
}

⚠️ 很多 SDK 都会用到 universal_link,可为不同 SDK 分配不同的 path 以作区分

HarmonyOS
  • 当前在 HarmonyOS 平台, 仅支持 setIsPermissionGranted/registerApp/isQQInstalled/loginServerSide
  • 由于 SDK 限制,当前仅支持 Server-Side 模式登录,请调用 loginServerSide 方法登录, 支持拉起 App 授权或 H5 授权 (qrcode 为 true 即可)
  • 为了 API 统一, Server-Side 模式授权返回的 auth code 存储在 TencentLoginResp.accessToken (不要当成客户端的 token 使用)
  • 详情阅读官方文档: harmonyos_sdk 环境搭建, 并阅读最后的说明
  • 关于在后端使用 code 换取 access_token 的问题, 请参考官方文档: 通过Authorization Code获取Access Token , redirect_uri 一般为 auth://tauth.qq.com/

项目中 module.json5 的 "module" 节点下配置 querySchemes

"querySchemes": [
    "https",
    "qqopenapi"
]

在 Ability 的 skills 节点中配置 scheme

"skills": [
 {
    "entities": [
      "entity.system.browsable"
    ],
    "actions": [
      "ohos.want.action.viewData"
    ],
    "uris": [
      {
        "scheme": "qqopenapi", // 接收 QQ 回调数据
        "host": "102061317", // 业务申请的互联 appId
        "path": "auth",
        "linkFeature": "Login",
      }
    ]
  }
]
Flutter
分享类型 说说(图/文/视频) 文本 图片 音乐 视频 网页
QQ 不支持 不支持 支持 支持 不支持 支持
QZone 支持 不支持 不支持 不支持 不支持 支持
  • 注意

⚠️⚠️⚠️ registerApp 前必须先调用 setIsPermissionGranted issues/60 issues/79

  • 兼容

flutter 2.5 兼容问题 issues/54

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    # 兼容 Flutter 2.5
    target.build_configurations.each do |config|
      # config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
      config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'i386 arm64'
    end
  end
end
  • 配置
dependencies:
  tencent_kit: ^${latestTag}
#  tencent_kit:
#    git:
#      url: https://github.com/RxReader/tencent_kit.git

tencent_kit:
  app_id: ${your tencent app id}
  universal_link: https://${your applinks domain}/universal_link/${example_app}/qq_conn/${your tencent app id}/ # 可选项目
  • 安装(仅iOS)
# step.1 安装必要依赖
sudo gem install plist
# step.2 切换工作目录,插件里为 example/ios/,普通项目为 ios/
cd example/ios/
# step.3 执行脚本
pod install

示例

示例

Star History

stars

RxReader GitHub avatar
GitHub 作者

RxReader ↗

语言Dart

分类

此仓库发布的插件

使用的依赖

依赖清单 7 项

如何选择适合项目的代码仓?

先按使用场景筛选,再比较项目活跃情况,最后到原始仓库核对使用要求。

  1. 通过仓库名、作者或描述搜索,再按技术分类缩小范围。
  2. 结合星标、复刻与最近推送比较项目;星标反映社区关注,不代表质量保证。
  3. 使用前在 GitHub 核对 README、许可证与 Issues。

来源与维护

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗