Time stretching, AndroidX, update gradle

This commit is contained in:
Ryan Heise 2019-12-26 00:44:08 +11:00
parent a50daad9e1
commit b93611dca3
19 changed files with 1963 additions and 160 deletions

1
example/.gitignore vendored
View file

@ -24,6 +24,7 @@
**/doc/api/
.dart_tool/
.flutter-plugins
.flutter-plugins-dependencies
.packages
.pub-cache/
.pub/

View file

@ -34,11 +34,11 @@ android {
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.ryanheise.just_audio_example"
minSdkVersion 16
minSdkVersion 21
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
@ -56,6 +56,6 @@ flutter {
dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}

View file

@ -5,7 +5,7 @@ buildscript {
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath 'com.android.tools.build:gradle:3.5.0'
}
}

View file

@ -1,2 +1,4 @@
org.gradle.jvmargs=-Xmx1536M
android.enableR8=true
android.useAndroidX=true
android.enableJetifier=true

View file

@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

View file

@ -1,10 +1,7 @@
import 'dart:math';
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter/services.dart';
import 'package:just_audio/just_audio.dart';
import 'package:rxdart/rxdart.dart';
void main() => runApp(MyApp());
@ -14,11 +11,14 @@ class MyApp extends StatefulWidget {
}
class _MyAppState extends State<MyApp> {
final AudioPlayer _player = AudioPlayer();
final _volumeSubject = BehaviorSubject.seeded(1.0);
final _speedSubject = BehaviorSubject.seeded(1.0);
AudioPlayer _player;
@override
void initState() {
super.initState();
_player = AudioPlayer();
_player.setUrl(
"https://s3.amazonaws.com/scifri-episodes/scifri20181123-episode.mp3");
}
@ -82,6 +82,7 @@ class _MyAppState extends State<MyApp> {
);
},
),
Text("Track position"),
StreamBuilder<Duration>(
stream: _player.durationStream,
builder: (context, snapshot) {
@ -101,6 +102,34 @@ class _MyAppState extends State<MyApp> {
);
},
),
Text("Volume"),
StreamBuilder<double>(
stream: _volumeSubject.stream,
builder: (context, snapshot) => Slider(
divisions: 20,
min: 0.0,
max: 2.0,
value: snapshot.data ?? 1.0,
onChanged: (value) {
_volumeSubject.add(value);
_player.setVolume(value);
},
),
),
Text("Speed"),
StreamBuilder<double>(
stream: _speedSubject.stream,
builder: (context, snapshot) => Slider(
divisions: 10,
min: 0.5,
max: 1.5,
value: snapshot.data ?? 1.0,
onChanged: (value) {
_speedSubject.add(value);
_player.setSpeed(value);
},
),
),
],
),
),

View file

@ -7,7 +7,7 @@ packages:
name: archive
url: "https://pub.dartlang.org"
source: hosted
version: "2.0.10"
version: "2.0.11"
args:
dependency: transitive
description:
@ -21,7 +21,7 @@ packages:
name: async
url: "https://pub.dartlang.org"
source: hosted
version: "2.3.0"
version: "2.4.0"
boolean_selector:
dependency: transitive
description:
@ -87,21 +87,21 @@ packages:
path: ".."
relative: true
source: path
version: "0.0.1"
version: "0.0.2"
matcher:
dependency: transitive
description:
name: matcher
url: "https://pub.dartlang.org"
source: hosted
version: "0.12.5"
version: "0.12.6"
meta:
dependency: transitive
description:
name: meta
url: "https://pub.dartlang.org"
source: hosted
version: "1.1.7"
version: "1.1.8"
path:
dependency: transitive
description:
@ -145,12 +145,12 @@ packages:
source: hosted
version: "2.0.5"
rxdart:
dependency: transitive
dependency: "direct main"
description:
name: rxdart
url: "https://pub.dartlang.org"
source: hosted
version: "0.22.6"
version: "0.23.1"
sky_engine:
dependency: transitive
description: flutter
@ -197,7 +197,7 @@ packages:
name: test_api
url: "https://pub.dartlang.org"
source: hosted
version: "0.2.5"
version: "0.2.11"
typed_data:
dependency: transitive
description:
@ -220,5 +220,5 @@ packages:
source: hosted
version: "3.5.0"
sdks:
dart: ">=2.4.0 <3.0.0"
dart: ">=2.6.0 <3.0.0"
flutter: ">=1.9.1+hotfix.5 <2.0.0"

View file

@ -6,9 +6,8 @@ dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
rxdart: ^0.23.1
dev_dependencies:
flutter_test: