質問編集履歴

3

build.gradle、gradle-wrapper.propertiesの追記、現状

2023/03/04 12:38

投稿

j06110611
j06110611

スコア54

test CHANGED
File without changes
test CHANGED
@@ -9,131 +9,82 @@
9
9
  > Querying the mapped value of map(java.io.File property(org.gradle.api.file.Directory, fixed(class org.gradle.api.internal.file.DefaultFilePropertyFactory$FixedDirectory, C:\Users\User\StudioProjects\translation_diary\build\shared_preferences_android\generated\ap_generated_sources\debug\out)) org.gradle.api.internal.file.DefaultFilePropertyFactory$ToFileTransformer@107a4919) before task ':shared_preferences_android:compileDebugJavaWithJavac' has completed is not supported
10
10
  ```
11
11
 
12
- ### 現状
13
- options.generatedSourceOutputDirectoryで調べたら同じエラーが見つかりました。[これ](https://stackoverflow.com/questions/69598542/failed-to-query-the-value-of-task-appcompiledebugjavawithjavac-property-opt)を読んでとりあえずAGPのバージョンを上げてようと思ったのですが、今[これ](https://stackoverflow.com/questions/70880154/agp-upgrade-assistant-window-not-opening-in-android-studio)で回答んとなく読んでいったんプロジェクトを閉じて開けてみたりしたのですがウィンドウが出てこないです
14
- 読めていかもしれないです
15
- どういうことか教えていただけないでしょうか。
12
+ ### 試したこと・現状
13
+ [これ](https://stackoverflow.com/questions/69598542/failed-to-query-the-value-of-task-appcompiledebugjavawithjavac-property-opt)を読みまし。でも下記gradle-wrapper.propertiesの通りgradleのバージョン7.6なのでよくわからないままです
14
+ build.gradle追記したのでおかしところであれば教えてほしいです
16
15
 
16
+ ### build.gradle
17
+ ```gradle
18
+ def localProperties = new Properties()
19
+ def localPropertiesFile = rootProject.file('local.properties')
20
+ if (localPropertiesFile.exists()) {
21
+ localPropertiesFile.withReader('UTF-8') { reader ->
22
+ localProperties.load(reader)
23
+ }
24
+ }
17
25
 
26
+ def flutterRoot = localProperties.getProperty('flutter.sdk')
27
+ if (flutterRoot == null) {
28
+ throw new java.io.FileNotFoundException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
29
+ }
18
30
 
19
- ### SharedPreferencesを使っているコード
20
- ```Dart
21
- final Future<SharedPreferences> _diaryPrefs = SharedPreferences.getInstance();
31
+ def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
22
- final Future<SharedPreferences> _counterPrefs = SharedPreferences.getInstance();
23
- final Future<SharedPreferences> _datePrefs = SharedPreferences.getInstance();
24
- final Future<SharedPreferences> _timePrefs = SharedPreferences.getInstance();
25
- int counter = 0;
32
+ if (flutterVersionCode == null) {
33
+ flutterVersionCode = '1'
34
+ }
26
35
 
27
- class SaveAndGet {
28
- String getDate(){
29
- DateTime now = DateTime.now();
30
- DateFormat outputFormat = DateFormat('yyyy/MM/dd');
36
+ def flutterVersionName = localProperties.getProperty('flutter.versionName')
37
+ if (flutterVersionName == null) {
31
- String date = outputFormat.format(now);
38
+ flutterVersionName = '1.0'
32
- return date;
33
- }
39
+ }
34
40
 
35
- String getTime(){
36
- DateTime now = DateTime.now();
37
- DateFormat outputFormat = DateFormat('hh:mm');
41
+ apply plugin: 'com.android.application'
38
- String time = outputFormat.format(now);
42
+ apply plugin: 'kotlin-android'
39
- return time;
43
+ apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
40
- }
41
44
 
42
- Future<void> save(String inputtext,String date,String time) async{
43
- final SharedPreferences diaryPrefs = await _diaryPrefs;
44
- final SharedPreferences counterPrefs = await _counterPrefs;
45
- final SharedPreferences datePrefs = await _datePrefs;
45
+ android {
46
- final SharedPreferences timePrefs = await _timePrefs;
47
- await diaryPrefs.setString(counter.toString(), inputtext);
48
- print(inputtext);
46
+ compileSdkVersion 31
49
- await counterPrefs.setInt('counter',counter);
50
- await datePrefs.setString(counter.toString(), date);
51
- await timePrefs.setString(counter.toString(), time);
52
- }
53
47
 
54
- Future<int> getCounterPref() async {
48
+ sourceSets {
55
- SharedPreferences counterPrefs = await SharedPreferences.getInstance();
56
- return (counterPrefs.getInt('counter') ?? 0);
49
+ main.java.srcDirs += 'src/main/kotlin'
57
- }
50
+ }
58
51
 
52
+ defaultConfig {
53
+ // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
59
- Future<List> getDiaryPref() async {
54
+ applicationId "com.example.translation_diary"
60
- SharedPreferences diaryPrefs = await SharedPreferences.getInstance();
55
+ minSdkVersion 16
61
- List<String> list = [];
56
+ targetSdkVersion 31
62
- for(int i = 1; i <= counter; i++) {
57
+ versionCode flutterVersionCode.toInteger()
63
- list.add(diaryPrefs.getString(i.toString()) ?? 'nothing');
58
+ versionName flutterVersionName
64
59
  }
65
- return list;
66
- }
67
60
 
61
+ buildTypes {
68
- Future<List> getDatePref() async {
62
+ release {
69
- SharedPreferences datePrefs = await SharedPreferences.getInstance();
63
+ // TODO: Add your own signing config for the release build.
70
- List<String> list = [];
64
+ // Signing with the debug keys for now, so `flutter run --release` works.
71
- for(int i = 1; i <= counter; i++) {
65
+ signingConfig signingConfigs.debug
72
- list.add(datePrefs.getString(i.toString()) ?? 'nothing');
66
+ }
73
67
  }
74
- return list;
75
- }
68
+ }
76
69
 
77
- Future<List> getTimePref() async {
70
+ flutter {
78
- SharedPreferences timePrefs = await SharedPreferences.getInstance();
79
- List<String> list = [];
71
+ source '../..'
80
- for(int i = 1; i <= counter; i++) {
81
- list.add(timePrefs.getString(i.toString()) ?? 'nothing');
82
- }
72
+ }
73
+
83
- return list;
74
+ dependencies {
84
- }
75
+ implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
85
76
  }
86
77
  ```
78
+ ### gradlewrapper.properties
79
+ ```properties
80
+ distributionBase=GRADLE_USER_HOME
81
+ distributionPath=wrapper/dists
82
+ zipStoreBase=GRADLE_USER_HOME
83
+ zipStorePath=wrapper/dists
84
+ distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-all.zip
87
85
 
88
- ```Dart
89
- bool madeOrNot = false;
90
- List diaryList = [];
91
- List dateList = [];
92
- List timeList = [];
93
- String translatedText = '';
94
- List<String> translatedList = [];
95
- final translator = GoogleTranslator();
96
- SaveAndGet sag = new SaveAndGet();
97
-
98
- class ReadManager {
99
- Future<void> madeDiaryOrNot() async {
100
- counter = await sag.getCounterPref();
101
- if (counter > 0) {
102
- madeOrNot = true;
103
- }
104
- }
105
-
106
- Future<void> readDiary() async {
107
- if(madeOrNot) {
108
- diaryList = await sag.getDiaryPref();
109
- for(int i = 0; i < diaryList.length; i++) {
110
- await translate(diaryList.elementAt(i));
111
- translatedList.add(translatedText);
112
- }
113
- }
114
- }
115
-
116
- Future<void> readDate() async {
117
- if (madeOrNot) {
118
- dateList = await sag.getDatePref();
119
- }
120
- }
121
-
122
- Future<void> readTime() async {
123
- if (madeOrNot) {
124
- timeList = await sag.getTimePref();
125
- }
126
- }
127
-
128
- Future<void> translate(String inputtext) async{
129
- translatedText = '${await inputtext.translate(to: 'en')}'.toString();
130
- }
131
- }
132
86
  ```
133
-
134
- ### 最後に実装しようとしてたこと
135
- アプリを再度開いたとき、閉じるときに保存した文字列を読み込んで翻訳してListに追加
136
-
137
87
  ### 補足情報
138
88
  shared_preferencesのバージョン 2.0.13
89
+ gradleのバージョン 7.6
139
90
 

2

現状報告

2023/03/04 12:10

投稿

j06110611
j06110611

スコア54

test CHANGED
File without changes
test CHANGED
@@ -9,11 +9,12 @@
9
9
  > Querying the mapped value of map(java.io.File property(org.gradle.api.file.Directory, fixed(class org.gradle.api.internal.file.DefaultFilePropertyFactory$FixedDirectory, C:\Users\User\StudioProjects\translation_diary\build\shared_preferences_android\generated\ap_generated_sources\debug\out)) org.gradle.api.internal.file.DefaultFilePropertyFactory$ToFileTransformer@107a4919) before task ':shared_preferences_android:compileDebugJavaWithJavac' has completed is not supported
10
10
  ```
11
11
 
12
- ### 試したこと
12
+ ### 現状
13
+ options.generatedSourceOutputDirectoryで調べたら同じエラーが見つかりました。[これ](https://stackoverflow.com/questions/69598542/failed-to-query-the-value-of-task-appcompiledebugjavawithjavac-property-opt)を読んでとりあえずAGPのバージョンを上げてみようと思ったのですが、今[これ](https://stackoverflow.com/questions/70880154/agp-upgrade-assistant-window-not-opening-in-android-studio)で回答なんとなく読んでいったんプロジェクトを閉じて開けてみたりしたのですがウィンドウが出てこないです
14
+ 読めてないかもしれないです
15
+ どういうことか教えていただけないでしょうか。
13
16
 
14
- ChromeやStackOverflowで
17
+
15
- 「Execution failed for task ':shared_preferences_android:compileDebugJavaWithJavac'」で調べましたが一致したものが出てこず、
16
- わかりません。お助けください・・・
17
18
 
18
19
  ### SharedPreferencesを使っているコード
19
20
  ```Dart

1

SharedPreferencesを使っているコードを記載しました。

2023/03/04 04:55

投稿

j06110611
j06110611

スコア54

test CHANGED
File without changes
test CHANGED
@@ -15,6 +15,124 @@
15
15
  「Execution failed for task ':shared_preferences_android:compileDebugJavaWithJavac'」で調べましたが一致したものが出てこず、
16
16
  わかりません。お助けください・・・
17
17
 
18
+ ### SharedPreferencesを使っているコード
19
+ ```Dart
20
+ final Future<SharedPreferences> _diaryPrefs = SharedPreferences.getInstance();
21
+ final Future<SharedPreferences> _counterPrefs = SharedPreferences.getInstance();
22
+ final Future<SharedPreferences> _datePrefs = SharedPreferences.getInstance();
23
+ final Future<SharedPreferences> _timePrefs = SharedPreferences.getInstance();
24
+ int counter = 0;
25
+
26
+ class SaveAndGet {
27
+ String getDate(){
28
+ DateTime now = DateTime.now();
29
+ DateFormat outputFormat = DateFormat('yyyy/MM/dd');
30
+ String date = outputFormat.format(now);
31
+ return date;
32
+ }
33
+
34
+ String getTime(){
35
+ DateTime now = DateTime.now();
36
+ DateFormat outputFormat = DateFormat('hh:mm');
37
+ String time = outputFormat.format(now);
38
+ return time;
39
+ }
40
+
41
+ Future<void> save(String inputtext,String date,String time) async{
42
+ final SharedPreferences diaryPrefs = await _diaryPrefs;
43
+ final SharedPreferences counterPrefs = await _counterPrefs;
44
+ final SharedPreferences datePrefs = await _datePrefs;
45
+ final SharedPreferences timePrefs = await _timePrefs;
46
+ await diaryPrefs.setString(counter.toString(), inputtext);
47
+ print(inputtext);
48
+ await counterPrefs.setInt('counter',counter);
49
+ await datePrefs.setString(counter.toString(), date);
50
+ await timePrefs.setString(counter.toString(), time);
51
+ }
52
+
53
+ Future<int> getCounterPref() async {
54
+ SharedPreferences counterPrefs = await SharedPreferences.getInstance();
55
+ return (counterPrefs.getInt('counter') ?? 0);
56
+ }
57
+
58
+ Future<List> getDiaryPref() async {
59
+ SharedPreferences diaryPrefs = await SharedPreferences.getInstance();
60
+ List<String> list = [];
61
+ for(int i = 1; i <= counter; i++) {
62
+ list.add(diaryPrefs.getString(i.toString()) ?? 'nothing');
63
+ }
64
+ return list;
65
+ }
66
+
67
+ Future<List> getDatePref() async {
68
+ SharedPreferences datePrefs = await SharedPreferences.getInstance();
69
+ List<String> list = [];
70
+ for(int i = 1; i <= counter; i++) {
71
+ list.add(datePrefs.getString(i.toString()) ?? 'nothing');
72
+ }
73
+ return list;
74
+ }
75
+
76
+ Future<List> getTimePref() async {
77
+ SharedPreferences timePrefs = await SharedPreferences.getInstance();
78
+ List<String> list = [];
79
+ for(int i = 1; i <= counter; i++) {
80
+ list.add(timePrefs.getString(i.toString()) ?? 'nothing');
81
+ }
82
+ return list;
83
+ }
84
+ }
85
+ ```
86
+
87
+ ```Dart
88
+ bool madeOrNot = false;
89
+ List diaryList = [];
90
+ List dateList = [];
91
+ List timeList = [];
92
+ String translatedText = '';
93
+ List<String> translatedList = [];
94
+ final translator = GoogleTranslator();
95
+ SaveAndGet sag = new SaveAndGet();
96
+
97
+ class ReadManager {
98
+ Future<void> madeDiaryOrNot() async {
99
+ counter = await sag.getCounterPref();
100
+ if (counter > 0) {
101
+ madeOrNot = true;
102
+ }
103
+ }
104
+
105
+ Future<void> readDiary() async {
106
+ if(madeOrNot) {
107
+ diaryList = await sag.getDiaryPref();
108
+ for(int i = 0; i < diaryList.length; i++) {
109
+ await translate(diaryList.elementAt(i));
110
+ translatedList.add(translatedText);
111
+ }
112
+ }
113
+ }
114
+
115
+ Future<void> readDate() async {
116
+ if (madeOrNot) {
117
+ dateList = await sag.getDatePref();
118
+ }
119
+ }
120
+
121
+ Future<void> readTime() async {
122
+ if (madeOrNot) {
123
+ timeList = await sag.getTimePref();
124
+ }
125
+ }
126
+
127
+ Future<void> translate(String inputtext) async{
128
+ translatedText = '${await inputtext.translate(to: 'en')}'.toString();
129
+ }
130
+ }
131
+ ```
132
+
133
+ ### 最後に実装しようとしてたこと
134
+ アプリを再度開いたとき、閉じるときに保存した文字列を読み込んで翻訳してListに追加
135
+
18
136
  ### 補足情報
19
137
  shared_preferencesのバージョン 2.0.13
20
138