提交 e154ccd2 authored 作者: JarvanMo's avatar JarvanMo

share music demo

上级 6d2f54a4
...@@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; ...@@ -2,6 +2,7 @@ import 'package:flutter/material.dart';
import 'dart:async'; import 'dart:async';
import 'package:fluwx/fluwx.dart'; import 'package:fluwx/fluwx.dart';
import 'package:fluwx_example/share_music.dart';
import 'package:fluwx_example/share_web_page.dart'; import 'package:fluwx_example/share_web_page.dart';
import 'share_image_page.dart'; import 'share_image_page.dart';
import 'share_text_image.dart'; import 'share_text_image.dart';
...@@ -30,6 +31,7 @@ class _MyAppState extends State<MyApp> { ...@@ -30,6 +31,7 @@ class _MyAppState extends State<MyApp> {
"shareText": (context) => ShareTextPage(), "shareText": (context) => ShareTextPage(),
"shareImage":(context) => ShareImagePage(), "shareImage":(context) => ShareImagePage(),
"shareWebPage":(context) => ShareWebPagePage(), "shareWebPage":(context) => ShareWebPagePage(),
"shareMusic":(context) => ShareMusicPage(),
}, },
home: new Scaffold( home: new Scaffold(
appBar: new AppBar( appBar: new AppBar(
...@@ -40,31 +42,6 @@ class _MyAppState extends State<MyApp> { ...@@ -40,31 +42,6 @@ class _MyAppState extends State<MyApp> {
} }
} }
// var fluwx = Fluwx();
//// fluwx.share(WeChatShareMiniProgramModel(
//// webPageUrl: "http://www.qq.com",
//// miniProgramType:
//// WeChatShareMiniProgramModel.MINI_PROGRAM_TYPE_RELEASE,
//// userName: "gh_d43f693ca31f",
//// path: '/pages/media',
//// title: "title",
//// description: "des",
//// thumbnail:
//// 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1534532387799&di=12701cc3f20c1a78a5c7524ec33b4c59&imgtype=0&src=http%3A%2F%2Fwww.cssxt.com%2Fuploadfile%2F2017%2F1208%2F20171208110834538.jpg',
//// ));
//// thumbnail: 'http://b.hiphotos.baidu.com/image/h%3D300/sign=4bfc640817d5ad6eb5f962eab1c939a3/8718367adab44aedb794e128bf1c8701a08bfb20.jpg',
// fluwx.share(
// WeChatShareWebPageModel(
// webPage: "https://github.com/JarvanMo/fluwx",
// title: "MyGithub",
// thumbnail: "assets://images/logo.png"
// )
// ).then((result){
// print("--$result");
// },onError: (msg){
// print(msg);
// });
//// fluwx.share(WeChatShareImageModel(image: "imagePath",thumbnail: "thumbanailPath"));
class ShareSelectorPage extends StatelessWidget { class ShareSelectorPage extends StatelessWidget {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
...@@ -80,6 +57,10 @@ class ShareSelectorPage extends StatelessWidget { ...@@ -80,6 +57,10 @@ class ShareSelectorPage extends StatelessWidget {
Navigator.of(context).pushNamed("shareWebPage"); Navigator.of(context).pushNamed("shareWebPage");
}, child: const Text("share webpage")), }, child: const Text("share webpage")),
new OutlineButton(onPressed: () {
Navigator.of(context).pushNamed("shareMusic");
}, child: const Text("share music")),
], ],
); );
} }
......
import 'package:flutter/material.dart';
import 'package:fluwx/fluwx.dart';
class ShareMusicPage extends StatefulWidget {
@override
_ShareMusicPageState createState() => _ShareMusicPageState();
}
class _ShareMusicPageState extends State<ShareMusicPage> {
Fluwx fluwx;
String _musicUrl = "http://staff2.ustc.edu.cn/~wdw/softdown/index.asp/0042515_05.ANDY.mp3";
String _musicLowBandUrl = "http://www.qq.com";
String _title = "Beyond";
String _description = "A Popular Rock Band From China";
String _thumnail ="assets://images/logo.png";
WeChatScene scene = WeChatScene.SESSION;
@override
void initState() {
super.initState();
fluwx = new Fluwx();
}
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: AppBar(
title: const Text("ShareWebPage"),
actions: <Widget>[
IconButton(icon: Icon(Icons.share,color: Colors.white,), onPressed: _share)
],
),
body: Padding(
padding: const EdgeInsets.all(8.0),
child: new Column(
children: <Widget>[
new TextField(
controller: TextEditingController(text: "http://staff2.ustc.edu.cn/~wdw/softdown/index.asp/0042515_05.ANDY.mp3"),
onChanged: (str){
_musicUrl = str;
},
decoration: InputDecoration(
labelText: "music url"
),
),
new TextField(
controller: TextEditingController(text: "http://www.qq.com"),
onChanged: (str){
_musicLowBandUrl = str;
},
decoration: InputDecoration(
labelText: "music low band url"
),
),
new TextField(
controller: TextEditingController(text: "Beyond"),
onChanged: (str){
_title = str;
},
decoration: InputDecoration(
labelText: "title"
),
),
new TextField(
controller: TextEditingController(text: "A Popular Rock Band From China"),
onChanged: (str){
_description = str;
},
decoration: InputDecoration(
labelText: "description"
),
),
new TextField(
controller: TextEditingController(text: "assets://images/logo.png"),
onChanged: (str){
_thumnail = str;
},
decoration: InputDecoration(
labelText: "thumbnail"
),
),
new Row(
children: <Widget>[
const Text("分享至"),
Row(
children: <Widget>[
new Radio<WeChatScene>(
value: WeChatScene.SESSION,
groupValue: scene,
onChanged: handleRadioValueChanged
),
const Text("会话")
],
),
Row(
children: <Widget>[
new Radio<WeChatScene>(
value: WeChatScene.TIMELINE,
groupValue: scene,
onChanged: handleRadioValueChanged
),
const Text("朋友圈")
],
),
Row(
children: <Widget>[
new Radio<WeChatScene>(
value: WeChatScene.FAVORITE,
groupValue: scene,
onChanged: handleRadioValueChanged
),
const Text("收藏")
],
)
],
)
],
),
),
);
}
void _share() {
var model = WeChatShareMusicModel(
title: _title,
description: _description,
transaction: "music",
musicUrl: _musicUrl,
musicLowBandDataUrl: _musicLowBandUrl
);
fluwx.share(model);
}
void handleRadioValueChanged(WeChatScene scene){
setState(() {
this.scene = scene;
});
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论