Skip to content

Commit 1f69778

Browse files
committed
Merged in release/15.2.0 (pull request #30)
Release/15.2.0
2 parents cf7372c + 3b1f58b commit 1f69778

File tree

12 files changed

+73
-33
lines changed

12 files changed

+73
-33
lines changed

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# 15.2.0
2+
3+
Upgraded inspect screen
4+
15
# 15.1.0
26

37
Real-time chat

README.md

+20-1
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,33 @@ Flutter plugin for [bug reporting](https://www.shakebugs.com).
2727
Add Shake to your `pubspec.yaml` file.
2828
```yaml
2929
dependencies:
30-
shake_flutter: ^15.1.0
30+
shake_flutter: ^15.2.0
3131
```
3232
3333
Install package by running command in terminal.
3434
```bash
3535
flutter packages get
3636
```
3737

38+
### Set compileSdkVersion version in the build.gradle file
39+
40+
Since Shake requires `compileSdkVersion` 29 or greater, verify that `compileSdkVersion` is correctly set in the */android/app/build.gradle* file:
41+
42+
```groovy title="build.gradle"
43+
android {
44+
// highlight-next-line
45+
compileSdkVersion 29
46+
47+
defaultConfig {
48+
applicationId "com.shakebugs.flutter.example"
49+
minSdkVersion 24
50+
targetSdkVersion 29
51+
versionCode flutterVersionCode.toInteger()
52+
versionName flutterVersionName
53+
}
54+
}
55+
```
56+
3857
### Start Shake
3958

4059
Add Shake import.

android/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,5 +40,5 @@ android {
4040

4141
dependencies {
4242
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
43-
api "$System.env.ANDROID_DEPENDENCY:15.1.+"
43+
api "$System.env.ANDROID_DEPENDENCY:15.2.+"
4444
}

android/src/main/kotlin/com/shakebugs/flutter/ShakePlugin.kt

+9-3
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,8 @@ class ShakePlugin : FlutterPlugin, MethodCallHandler, ActivityAware {
6161
when (call.method) {
6262
"start" -> start(call)
6363
"show" -> show(call)
64-
"setEnabled" -> setEnabled(call)
64+
"isUserFeedbackEnabled" -> isUserFeedbackEnabled(result)
65+
"setUserFeedbackEnabled" -> setUserFeedbackEnabled(call)
6566
"setEnableBlackBox" -> setEnableBlackBox(call)
6667
"isEnableBlackBox" -> isEnableBlackBox(result)
6768
"setEnableActivityHistory" -> setEnableActivityHistory(call)
@@ -141,13 +142,18 @@ class ShakePlugin : FlutterPlugin, MethodCallHandler, ActivityAware {
141142
}
142143
}
143144

144-
private fun setEnabled(call: MethodCall) {
145+
private fun setUserFeedbackEnabled(call: MethodCall) {
145146
val enabled: Boolean? = call.argument("enabled")
146147
enabled?.let {
147-
Shake.setEnabled(enabled)
148+
Shake.setUserFeedbackEnabled(enabled)
148149
}
149150
}
150151

152+
private fun isUserFeedbackEnabled(result: Result) {
153+
val enabled: Boolean = Shake.isUserFeedbackEnabled()
154+
result.success(enabled)
155+
}
156+
151157
private fun setEnableBlackBox(call: MethodCall) {
152158
val enabled: Boolean? = call.argument("enabled")
153159
enabled?.let {

example/.scripts/run-dev.sh

100644100755
File mode changed.

example/.scripts/run-prd.sh

100644100755
File mode changed.

example/.scripts/run-stg.sh

100644100755
File mode changed.

example/ios/Podfile.lock

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@ PODS:
99
- Flutter
1010
- path_provider (0.0.1):
1111
- Flutter
12-
- Shake-Staging (15.1.0-rc.1447)
12+
- Shake-Staging (15.2.0-rc.1505)
1313
- shake_flutter (0.0.1):
1414
- Flutter
15-
- Shake-Staging (~> 15.1.0-rc.1447)
15+
- Shake-Staging (~> 15.2.0-rc)
1616
- Toast (4.0.0)
1717
- url_launcher (0.0.1):
1818
- Flutter
@@ -54,8 +54,8 @@ SPEC CHECKSUMS:
5454
fluttertoast: 6122fa75143e992b1d3470f61000f591a798cc58
5555
package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62
5656
path_provider: d1e9807085df1f9cc9318206cd649dc0b76be3de
57-
Shake-Staging: 1e48bab5826b8192d7c0a3917f3e1e7d44d6b02e
58-
shake_flutter: f21bd5c31b35e9b3963146422751633b596672bb
57+
Shake-Staging: c20bf6e9d2cfc7da6c219946809fd6d7a4720b64
58+
shake_flutter: 2df7941cc763527410532da465476653135e819b
5959
Toast: 91b396c56ee72a5790816f40d3a94dd357abc196
6060
url_launcher: b6e016d912f04be9f5bf6e8e82dc599b7ba59649
6161

example/lib/ui/main/home.dart

+9-9
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ class Home extends StatefulWidget {
3131
class _HomeState extends State<Home> {
3232
NetworkTester networkTester = DartTester();
3333

34+
bool? userFeedbackEnabled = false;
3435
bool? shakeInvokingEnabled = false;
3536
bool? buttonInvokingEnabled = false;
3637
bool? screenshotInvokingEnabled = false;
37-
bool? shakeEnabled = false;
3838
bool? blackboxEnabled = false;
3939
bool? inspectScreenEnabled = false;
4040
bool? activityHistoryEnabled = false;
@@ -57,10 +57,10 @@ class _HomeState extends State<Home> {
5757
}
5858

5959
void _initialize() async {
60+
final userFeedbackEnabled = await Shake.isUserFeedbackEnabled();
6061
final shakeInvokingEnabled = await Shake.isInvokeShakeOnShakeDeviceEvent();
6162
final buttonInvokingEnabled = await Shake.isShowFloatingReportButton();
6263
final screenshotInvokingEnabled = await Shake.isInvokeShakeOnScreenshot();
63-
final shakeEnabled = true; // Not provided by native SDK
6464
final blackboxEnabled = await Shake.isEnableBlackBox();
6565
final inspectScreenEnabled = await Shake.isEnableInspectScreen();
6666
final activityHistoryEnabled = await Shake.isEnableActivityHistory();
@@ -73,10 +73,10 @@ class _HomeState extends State<Home> {
7373
final screenshotIncluded = await Shake.isScreenshotIncluded();
7474

7575
setState(() {
76+
this.userFeedbackEnabled = userFeedbackEnabled;
7677
this.shakeInvokingEnabled = shakeInvokingEnabled;
7778
this.buttonInvokingEnabled = buttonInvokingEnabled;
7879
this.screenshotInvokingEnabled = screenshotInvokingEnabled;
79-
this.shakeEnabled = shakeEnabled;
8080
this.blackboxEnabled = blackboxEnabled;
8181
this.inspectScreenEnabled = inspectScreenEnabled;
8282
this.activityHistoryEnabled = activityHistoryEnabled;
@@ -181,9 +181,9 @@ class _HomeState extends State<Home> {
181181
children: [
182182
Header('Options'),
183183
Toggle(
184-
'Enabled',
185-
shakeEnabled!,
186-
_onEnableShakeToggle,
184+
'User feedback',
185+
userFeedbackEnabled!,
186+
_onUserFeedbackToggle,
187187
),
188188
Toggle(
189189
'Blackbox',
@@ -381,11 +381,11 @@ class _HomeState extends State<Home> {
381381
Shake.show();
382382
}
383383

384-
void _onEnableShakeToggle(enabled) {
384+
void _onUserFeedbackToggle(enabled) {
385385
setState(() {
386-
shakeEnabled = enabled;
386+
userFeedbackEnabled = enabled;
387387
});
388-
Shake.setEnabled(enabled);
388+
Shake.setUserFeedbackEnabled(enabled);
389389
}
390390

391391
void _onShakeInvokingToggle(enabled) {

ios/Classes/ShakePlugin.m

+17-8
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,10 @@ - (void)handleMethodCall:(FlutterMethodCall *)call result:(FlutterResult)result
3030
[self start:call result:result];
3131
} else if([@"show" isEqualToString:call.method]) {
3232
[self show:call result:result];
33-
} else if([@"setEnabled" isEqualToString:call.method]) {
34-
[self setEnabled:call result:result];
33+
} else if([@"setUserFeedbackEnabled" isEqualToString:call.method]) {
34+
[self setUserFeedbackEnabled:call result:result];
35+
} else if([@"isUserFeedbackEnabled" isEqualToString:call.method]) {
36+
[self isUserFeedbackEnabled:call result:result];
3537
} else if([@"setEnableActivityHistory" isEqualToString:call.method]) {
3638
[self setEnableActivityHistory:call result:result];
3739
} else if([@"isEnableActivityHistory" isEqualToString:call.method]) {
@@ -150,24 +152,31 @@ - (void)show:(FlutterMethodCall*) call result:(FlutterResult)result {
150152
result(nil);
151153
}
152154

153-
- (void)setEnabled:(FlutterMethodCall*) call result:(FlutterResult)result {
154-
BOOL shakeEnabled = [call.arguments[@"enabled"] boolValue];
155-
SHKShake.isPaused = !shakeEnabled;
156-
155+
- (void)setUserFeedbackEnabled:(FlutterMethodCall*) call result:(FlutterResult)result {
156+
BOOL enabled = [call.arguments[@"enabled"] boolValue];
157+
SHKShake.configuration.isUserFeedbackEnabled = enabled;
158+
157159
result(nil);
158160
}
159161

162+
- (void)isUserFeedbackEnabled:(FlutterMethodCall*) call result:(FlutterResult)result {
163+
BOOL isEnabled = SHKShake.configuration.isUserFeedbackEnabled;
164+
NSNumber *isEnabledObj = [NSNumber numberWithBool:isEnabled];
165+
166+
result(isEnabledObj);
167+
}
168+
160169
- (void)setEnableActivityHistory:(FlutterMethodCall*) call result:(FlutterResult)result {
161170
BOOL enableActivityHistory = [call.arguments[@"enabled"] boolValue];
162171
SHKShake.configuration.isActivityHistoryEnabled = enableActivityHistory;
163-
172+
164173
result(nil);
165174
}
166175

167176
- (void)isEnableActivityHistory:(FlutterMethodCall*) call result:(FlutterResult)result {
168177
BOOL isEnableActivityHistory = SHKShake.configuration.isActivityHistoryEnabled;
169178
NSNumber *isActivityHistoryEnabledObj = [NSNumber numberWithBool:isEnableActivityHistory];
170-
179+
171180
result(isActivityHistoryEnabledObj);
172181
}
173182

ios/shake_flutter.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,5 @@ Shake SDK wrapper
2020
# Flutter.framework does not contain a i386 slice. Only x86_64 simulators are supported.
2121
s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'VALID_ARCHS[sdk=iphonesimulator*]' => 'x86_64' }
2222
s.swift_version = '5.0'
23-
s.dependency "#{ENV['IOS_DEPENDENCY']}", "~> 15.1.0-rc"
23+
s.dependency "#{ENV['IOS_DEPENDENCY']}", "~> 15.2.0-rc"
2424
end

lib/shake_flutter.dart

+8-6
Original file line numberDiff line numberDiff line change
@@ -42,16 +42,18 @@ class Shake {
4242
});
4343
}
4444

45-
/// Enables or disables Shake.
46-
///
47-
/// If false, Shake immediately stops tracking data
48-
/// and Shake screen invoking becomes disabled.
49-
static void setEnabled(bool enabled) async {
50-
await _channel.invokeMethod('setEnabled', {
45+
/// Sets if user feedback is enabled.
46+
static void setUserFeedbackEnabled(bool enabled) async {
47+
await _channel.invokeMethod('setUserFeedbackEnabled', {
5148
'enabled': enabled,
5249
});
5350
}
5451

52+
/// Checks if user feedback is enabled.
53+
static Future<bool?> isUserFeedbackEnabled() async {
54+
return await _channel.invokeMethod('isUserFeedbackEnabled');
55+
}
56+
5557
/// Sets if black-box is enabled.
5658
static void setEnableBlackBox(bool enabled) async {
5759
await _channel.invokeMethod('setEnableBlackBox', {

0 commit comments

Comments
 (0)