This commit is contained in:
v7lin
2019-05-24 12:12:36 +08:00
parent 86179fa3f7
commit fe8c39de65
5 changed files with 108 additions and 9 deletions

View File

@ -63,6 +63,17 @@ steps:
files:
- ./coverage/lcov.info
volumes:
- name: pub-cache
temp: {}
- name: gradle
temp: {}
---
kind: pipeline
name: publish
steps:
- name: publish-check
image: v7lin/flutter:1.5.4-hotfix.2-stable
volumes:
@ -70,12 +81,87 @@ steps:
path: /opt/flutter/.pub-cache
commands:
- flutter packages pub publish --dry-run
when:
event:
- tag
- name: restore-cache
image: alpine:3.9.3
volumes:
- name: pub-cache
path: /opt/flutter/.pub-cache
commands:
- FLUTTER_HOME=/opt/flutter/.pub-cache
- wget -P $FLUTTER_HOME https://raw.githubusercontent.com/v7lin/pub_credentials/master/credentials.json.enc
- name: restore-cache-openssl
image: v7lin/openssl:1.1.1b
volumes:
- name: pub-cache
path: /opt/flutter/.pub-cache
environment:
ENC_METHOD:
from_secret: ENC_METHOD
ENC_PASSWORD:
from_secret: ENC_PASSWORD
commands:
- FLUTTER_HOME=/opt/flutter/.pub-cache
- openssl enc -d -$ENC_METHOD -k $ENC_PASSWORD -in $FLUTTER_HOME/credentials.json.enc -out $FLUTTER_HOME/credentials.json
- rm $FLUTTER_HOME/credentials.json.enc
- name: publish
image: v7lin/flutter:1.5.4-hotfix.2-stable
volumes:
- name: pub-cache
path: /opt/flutter/.pub-cache
commands:
- echo "y" | flutter packages pub publish
- name: save-cache-openssl
image: v7lin/openssl:1.1.1b
volumes:
- name: pub-cache
path: /opt/flutter/.pub-cache
environment:
ENC_METHOD:
from_secret: ENC_METHOD
ENC_PASSWORD:
from_secret: ENC_PASSWORD
commands:
- FLUTTER_HOME=/opt/flutter/.pub-cache
- openssl enc -e -$ENC_METHOD -k $ENC_PASSWORD -in $FLUTTER_HOME/credentials.json -out $FLUTTER_HOME/credentials.json.enc
- rm /opt/flutter/.pub-cache/credentials.json
- name: save-cache
image: docker:git
volumes:
- name: pub-cache
path: /opt/flutter/.pub-cache
environment:
GIT_USER_EMAIL:
from_secret: GIT_USER_EMAIL
GIT_USER_NAME:
from_secret: GIT_USER_NAME
GIT_USER_PASSWORD:
from_secret: GIT_USER_PASSWORD # '@''%40' -> URLEncoder.encode("@","utf-8");
commands:
- FLUTTER_HOME=/opt/flutter/.pub-cache
- git config --global user.email $GIT_USER_EMAIL
- git config --global user.name $GIT_USER_NAME
- git config --global credential.helper store
- git clone -b master https://$GIT_USER_NAME:$GIT_USER_PASSWORD@github.com/v7lin/pub_credentials.git $FLUTTER_HOME/pub_credentials
- rm $FLUTTER_HOME/pub_credentials/credentials.json.enc
- mv $FLUTTER_HOME/credentials.json.enc $FLUTTER_HOME/pub_credentials/credentials.json.enc
- cd $FLUTTER_HOME/pub_credentials
- git commit -am "update credentials by ci/cd tools"
- git push
volumes:
- name: pub-cache
temp: {}
- name: gradle
temp: {}
trigger:
status:
- success
event:
- tag
depends_on:
- default

View File

@ -1,3 +1,8 @@
## 0.3.0 - 2019.5.24
*
*
## 0.2.0 - 2019.3.26
* AccessToken

View File

@ -10,7 +10,6 @@ flutter版腾讯(QQ)SDK
## fake libraries
* [flutter版okhttp3](https://github.com/v7lin/fake_http)
* [flutter版微信SDK](https://github.com/v7lin/fake_wechat)
* [flutter版腾讯(QQ)SDK](https://github.com/v7lin/fake_tencent)
* [flutter版新浪微博SDK](https://github.com/v7lin/fake_weibo)

View File

@ -39,9 +39,9 @@ class Home extends StatefulWidget {
}
class _HomeState extends State<Home> {
static const String TENCENT_APPID = '222222';
static const String _TENCENT_APPID = '222222';
Tencent _tencent = Tencent();
Tencent _tencent = Tencent()..registerApp(appId: _TENCENT_APPID);
StreamSubscription<TencentLoginResp> _login;
StreamSubscription<TencentUserInfoResp> _userInfo;
@ -52,7 +52,6 @@ class _HomeState extends State<Home> {
@override
void initState() {
super.initState();
_tencent.registerApp(appId: TENCENT_APPID);
_login = _tencent.loginResp().listen(_listenLogin);
_userInfo = _tencent.userInfoResp().listen(_listenUserInfo);
_share = _tencent.shareResp().listen(_listenShare);

View File

@ -85,14 +85,17 @@ class Tencent {
}
}
/// 登录
Stream<TencentLoginResp> loginResp() {
return _loginRespStreamController.stream;
}
/// 用户信息
Stream<TencentUserInfoResp> userInfoResp() {
return _userInfoRespStreamController.stream;
}
/// 分享
Stream<TencentShareResp> shareResp() {
return _shareRespStreamController.stream;
}
@ -105,6 +108,7 @@ class Tencent {
return (await _channel.invokeMethod(_METHOD_ISQQSUPPORTSSOLOGIN)) as bool;
}
/// 登录
Future<void> login({
@required List<String> scope,
}) {
@ -117,10 +121,12 @@ class Tencent {
);
}
/// 登出
Future<void> logout() {
return _channel.invokeMethod(_METHOD_LOGOUT);
}
/// 用户信息
Future<void> getUserInfo({
@required String openId,
@required String accessToken,
@ -141,6 +147,7 @@ class Tencent {
);
}
/// 分享 - 说说
Future<void> shareMood({
@required int scene,
String summary,
@ -182,6 +189,7 @@ class Tencent {
return _channel.invokeMethod(_METHOD_SHAREMOOD, map);
}
/// 分享 - 图片
Future<void> shareImage({
@required int scene,
@required Uri imageUri,
@ -204,6 +212,7 @@ class Tencent {
return _channel.invokeMethod(_METHOD_SHAREIMAGE, map);
}
/// 分享 - 音乐
Future<void> shareMusic({
@required int scene,
@required String title,
@ -242,6 +251,7 @@ class Tencent {
return _channel.invokeMethod(_METHOD_SHAREMUSIC, map);
}
/// 分享 - 网页
Future<void> shareWebpage({
@required int scene,
@required String title,