~repos /only-bible-app

#kotlin#android#ios

GIT_CONFIG_PARAMETERS="'http.version=HTTP/1.1'" git clone https://git.pyrossh.dev/only-bible-app.git
Discussions: https://groups.google.com/g/rust-embed-devs

The only bible app you will ever need. No ads. No in-app purchases. No distractions.


Files changed (61) hide show
  1. .gitignore +0 -5
  2. android/.gitignore +6 -0
  3. android/app/build.gradle.kts +21 -3
  4. android/app/src/main/AndroidManifest.xml +5 -1
  5. android/app/src/main/kotlin/{sh/pyros/only_bible_app → dev/pyrossh/onlyBible}/MainActivity.kt +1 -1
  6. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/1_en-GB.jpeg +0 -0
  7. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/2_en-GB.jpeg +0 -0
  8. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/3_en-GB.jpeg +0 -0
  9. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/4_en-GB.jpeg +0 -0
  10. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/5_en-GB.jpeg +0 -0
  11. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/6_en-GB.jpeg +0 -0
  12. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/7_en-GB.jpeg +0 -0
  13. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/8_en-GB.jpeg +0 -0
  14. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/bible_select.png +0 -0
  15. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/book_select.png +0 -0
  16. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/chapter_select.png +0 -0
  17. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/hindi_home.png +0 -0
  18. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/home_dark.png +0 -0
  19. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/home_light.png +0 -0
  20. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/settings.png +0 -0
  21. android/fastlane/metadata/android/en-GB/images/phoneScreenshots/verse_select.png +0 -0
  22. ios/fastlane/screenshots/en-US/ipadScreenshots/bible_select.png +0 -0
  23. ios/fastlane/screenshots/en-US/ipadScreenshots/book_select.png +0 -0
  24. ios/fastlane/screenshots/en-US/ipadScreenshots/chapter_select.png +0 -0
  25. ios/fastlane/screenshots/en-US/ipadScreenshots/hindi_home.png +0 -0
  26. ios/fastlane/screenshots/en-US/ipadScreenshots/home_dark.png +0 -0
  27. ios/fastlane/screenshots/en-US/ipadScreenshots/home_light.png +0 -0
  28. ios/fastlane/screenshots/en-US/ipadScreenshots/settings.png +0 -0
  29. ios/fastlane/screenshots/en-US/ipadScreenshots/verse_select.png +0 -0
  30. ios/fastlane/screenshots/en-US/iphoneScreenshots/bible_select.png +0 -0
  31. ios/fastlane/screenshots/en-US/iphoneScreenshots/book_select.png +0 -0
  32. ios/fastlane/screenshots/en-US/iphoneScreenshots/chapter_select.png +0 -0
  33. ios/fastlane/screenshots/en-US/iphoneScreenshots/hindi_home.png +0 -0
  34. ios/fastlane/screenshots/en-US/iphoneScreenshots/home_dark.png +0 -0
  35. ios/fastlane/screenshots/en-US/iphoneScreenshots/home_light.png +0 -0
  36. ios/fastlane/screenshots/en-US/iphoneScreenshots/settings.png +0 -0
  37. ios/fastlane/screenshots/en-US/iphoneScreenshots/verse_select.png +0 -0
  38. {screenshots/macScreenshots → macScreenshots}/0x0ss (1).png +0 -0
  39. {screenshots/macScreenshots → macScreenshots}/0x0ss (2).png +0 -0
  40. {screenshots/macScreenshots → macScreenshots}/0x0ss (3).png +0 -0
  41. {screenshots/macScreenshots → macScreenshots}/0x0ss.png +0 -0
  42. screenshots/ipadScreenshots/book_select.png +0 -0
  43. screenshots/ipadScreenshots/chapter_select.png +0 -0
  44. screenshots/ipadScreenshots/home_dark.png +0 -0
  45. screenshots/ipadScreenshots/home_light.png +0 -0
  46. screenshots/ipadScreenshots/settings.png +0 -0
  47. screenshots/ipadScreenshots/verse_select.png +0 -0
  48. screenshots/iphoneScreenshots/book_select.png +0 -0
  49. screenshots/iphoneScreenshots/chapter_select.png +0 -0
  50. screenshots/iphoneScreenshots/home_dark.png +0 -0
  51. screenshots/iphoneScreenshots/home_light.png +0 -0
  52. screenshots/iphoneScreenshots/settings.png +0 -0
  53. screenshots/iphoneScreenshots/verse_select.png +0 -0
  54. screenshots/phoneScreenshots/book_select.png +0 -0
  55. screenshots/phoneScreenshots/chapter_select.png +0 -0
  56. screenshots/phoneScreenshots/home_dark.png +0 -0
  57. screenshots/phoneScreenshots/home_light.png +0 -0
  58. screenshots/phoneScreenshots/settings.png +0 -0
  59. screenshots/phoneScreenshots/verse_select.png +0 -0
  60. test/Roboto-Regular.ttf +0 -0
  61. test/screenshot_test.dart +38 -1
.gitignore CHANGED
@@ -2,11 +2,6 @@
2
2
  .gradle
3
3
  .DS_Store
4
4
  /build
5
- local.properties
6
- keystore.properties
7
- upload-keystore.jks
8
- android/service_account.json
9
- svc.json
10
5
  .dart_tool
11
6
  ui
12
7
  .flutter-plugins-dependencies
android/.gitignore CHANGED
@@ -12,3 +12,9 @@ GeneratedPluginRegistrant.java
12
12
  key.properties
13
13
  **/*.keystore
14
14
  **/*.jks
15
+ local.properties
16
+ keystore.properties
17
+ *.json
18
+ svc.json
19
+ service_account.json
20
+ pyrossh_keystore.jks
android/app/build.gradle.kts CHANGED
@@ -1,3 +1,12 @@
1
+ import java.util.Properties
2
+ import java.io.FileInputStream
3
+
4
+ val keystoreProperties = Properties()
5
+ val keystorePropertiesFile = rootProject.file("key.properties")
6
+ if (keystorePropertiesFile.exists()) {
7
+ keystoreProperties.load(FileInputStream(keystorePropertiesFile))
8
+ }
9
+
1
10
  plugins {
2
11
  id("com.android.application")
3
12
  id("kotlin-android")
@@ -6,7 +15,7 @@ plugins {
6
15
  }
7
16
 
8
17
  android {
9
- namespace = "sh.pyros.only_bible_app"
18
+ namespace = "dev.pyrossh.onlyBible"
10
19
  compileSdk = flutter.compileSdkVersion
11
20
  ndkVersion = flutter.ndkVersion
12
21
 
@@ -21,7 +30,7 @@ android {
21
30
 
22
31
  defaultConfig {
23
32
  // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
24
- applicationId = "sh.pyros.only_bible_app"
33
+ applicationId = "dev.pyrossh.onlyBible"
25
34
  // You can update the following values to match your application needs.
26
35
  // For more information, see: https://flutter.dev/to/review-gradle-config.
27
36
  minSdk = Math.max(flutter.minSdkVersion, 26)
@@ -30,11 +39,20 @@ android {
30
39
  versionName = flutter.versionName
31
40
  }
32
41
 
42
+ signingConfigs {
43
+ create("release") {
44
+ keyAlias = keystoreProperties["keyAlias"] as String
45
+ keyPassword = keystoreProperties["keyPassword"] as String
46
+ storeFile = keystoreProperties["storeFile"]?.let { file(it) }
47
+ storePassword = keystoreProperties["storePassword"] as String
48
+ }
49
+ }
50
+
33
51
  buildTypes {
34
52
  release {
35
53
  // TODO: Add your own signing config for the release build.
36
54
  // Signing with the debug keys for now, so `flutter run --release` works.
37
- signingConfig = signingConfigs.getByName("debug")
55
+ signingConfig = signingConfigs.getByName("release")
38
56
  }
39
57
  }
40
58
  }
android/app/src/main/AndroidManifest.xml CHANGED
@@ -1,6 +1,6 @@
1
1
  <manifest xmlns:android="http://schemas.android.com/apk/res/android">
2
2
  <application
3
- android:label="only_bible_app"
3
+ android:label="Only Bible App"
4
4
  android:name="${applicationName}"
5
5
  android:icon="@mipmap/ic_launcher">
6
6
  <activity
@@ -30,6 +30,7 @@
30
30
  <meta-data
31
31
  android:name="flutterEmbedding"
32
32
  android:value="2" />
33
+
33
34
  </application>
34
35
  <!-- Required to query activities that can process text, see:
35
36
  https://developer.android.com/training/package-visibility and
@@ -42,4 +43,7 @@
42
43
  <data android:mimeType="text/plain"/>
43
44
  </intent>
44
45
  </queries>
46
+
47
+ <uses-permission android:name="android.permission.INTERNET"/>
48
+
45
49
  </manifest>
android/app/src/main/kotlin/{sh/pyros/only_bible_app → dev/pyrossh/onlyBible}/MainActivity.kt RENAMED
@@ -1,4 +1,4 @@
1
- package sh.pyros.only_bible_app
1
+ package dev.pyrossh.onlyBible
2
2
 
3
3
  import io.flutter.embedding.android.FlutterActivity
4
4
 
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/1_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/2_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/3_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/4_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/5_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/6_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/7_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/8_en-GB.jpeg DELETED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/bible_select.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/book_select.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/chapter_select.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/hindi_home.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/home_dark.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/home_light.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/settings.png ADDED
Binary file
android/fastlane/metadata/android/en-GB/images/phoneScreenshots/verse_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/bible_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/book_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/chapter_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/hindi_home.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/home_dark.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/home_light.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/settings.png ADDED
Binary file
ios/fastlane/screenshots/en-US/ipadScreenshots/verse_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/bible_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/book_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/chapter_select.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/hindi_home.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/home_dark.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/home_light.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/settings.png ADDED
Binary file
ios/fastlane/screenshots/en-US/iphoneScreenshots/verse_select.png ADDED
Binary file
{screenshots/macScreenshots → macScreenshots}/0x0ss (1).png RENAMED
File without changes
{screenshots/macScreenshots → macScreenshots}/0x0ss (2).png RENAMED
File without changes
{screenshots/macScreenshots → macScreenshots}/0x0ss (3).png RENAMED
File without changes
{screenshots/macScreenshots → macScreenshots}/0x0ss.png RENAMED
File without changes
screenshots/ipadScreenshots/book_select.png DELETED
Binary file
screenshots/ipadScreenshots/chapter_select.png DELETED
Binary file
screenshots/ipadScreenshots/home_dark.png DELETED
Binary file
screenshots/ipadScreenshots/home_light.png DELETED
Binary file
screenshots/ipadScreenshots/settings.png DELETED
Binary file
screenshots/ipadScreenshots/verse_select.png DELETED
Binary file
screenshots/iphoneScreenshots/book_select.png DELETED
Binary file
screenshots/iphoneScreenshots/chapter_select.png DELETED
Binary file
screenshots/iphoneScreenshots/home_dark.png DELETED
Binary file
screenshots/iphoneScreenshots/home_light.png DELETED
Binary file
screenshots/iphoneScreenshots/settings.png DELETED
Binary file
screenshots/iphoneScreenshots/verse_select.png DELETED
Binary file
screenshots/phoneScreenshots/book_select.png DELETED
Binary file
screenshots/phoneScreenshots/chapter_select.png DELETED
Binary file
screenshots/phoneScreenshots/home_dark.png DELETED
Binary file
screenshots/phoneScreenshots/home_light.png DELETED
Binary file
screenshots/phoneScreenshots/settings.png DELETED
Binary file
screenshots/phoneScreenshots/verse_select.png DELETED
Binary file
test/Roboto-Regular.ttf ADDED
Binary file
test/screenshot_test.dart CHANGED
@@ -40,10 +40,11 @@ Widget buildScreenshotApp({
40
40
 
41
41
  void main() {
42
42
  late Bible bible;
43
- ScreenshotDevice.screenshotsFolder = '../screenshots/';
43
+ late Bible hindiBible;
44
44
 
45
45
  setUpAll(() async {
46
46
  bible = await loadBible("en_kjv");
47
+ hindiBible = await loadBible("hi");
47
48
  });
48
49
 
49
50
  final devices = [
@@ -53,7 +54,16 @@ void main() {
53
54
  ];
54
55
 
55
56
  for (final device in devices) {
57
+ void setFolder() {
58
+ if (device == GoldenScreenshotDevices.androidPhone) {
59
+ ScreenshotDevice.screenshotsFolder = '../android/fastlane/metadata/android/en-GB/images/';
60
+ } else {
61
+ ScreenshotDevice.screenshotsFolder = '../ios/fastlane/screenshots/en-US/';
62
+ }
63
+ }
64
+
56
65
  testGoldens("${device.name} - home light", (tester) async {
66
+ setFolder();
57
67
  final store = Store<AppState>(initialState: AppState(bible: bible));
58
68
  await tester.pumpWidget(buildScreenshotApp(
59
69
  device: device.device,
@@ -148,5 +158,32 @@ void main() {
148
158
  await tester.pump();
149
159
  await tester.expectScreenshot(device.device, "settings");
150
160
  });
161
+
162
+ testGoldens("${device.name} - bible select", (tester) async {
163
+ final store = Store<AppState>(initialState: AppState(bible: bible));
164
+ await tester.pumpWidget(buildScreenshotApp(
165
+ device: device.device,
166
+ store: store,
167
+ home: const Home(bookIndex: 0, chapterIndex: 0),
168
+ ));
169
+ await tester.pumpAndSettle();
170
+ await tester.tap(find.byKey(const Key("bible")));
171
+ await tester.pumpAndSettle();
172
+ await tester.loadAssets();
173
+ await tester.pump();
174
+ await tester.expectScreenshot(device.device, "bible_select");
175
+ });
176
+
177
+ testGoldens("${device.name} - hindi home", (tester) async {
178
+ final store = Store<AppState>(initialState: AppState(bible: hindiBible));
179
+ await tester.pumpWidget(buildScreenshotApp(
180
+ device: device.device,
181
+ store: store,
182
+ home: const Home(bookIndex: 0, chapterIndex: 0),
183
+ ));
184
+ await tester.loadAssets(fontsToMock: ["Roboto-Regular.ttf"]);
185
+ await tester.pump();
186
+ await tester.expectScreenshot(device.device, "hindi_home");
187
+ });
151
188
  }
152
189
  }