質問編集履歴

5

変更

2018/07/24 16:40

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -114,6 +114,8 @@
114
114
 
115
115
  ですが、よく見るとそれぞれのuuidStringが異なることに気づきました。
116
116
 
117
+ これだと上記の②と③をクリアできないです。
118
+
117
119
 
118
120
 
119
121
  uuidString以外で設定に使える相応しい文字列が自分では思いつかない為、

4

変更

2018/07/24 16:40

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- Firebase StorageのパスをFireStoreに保存するには?
1
+ Firebase StorageFireStoreに保存したuuidStringが異なってるので、一致させたいで
test CHANGED
@@ -4,11 +4,9 @@
4
4
 
5
5
 
6
6
 
7
- FIrebase Storageで画像をアップして、その画像のパスをFireStoreに保存したいです。
8
7
 
9
8
 
10
-
11
- ### 方法
9
+ ### 行いたい方法
12
10
 
13
11
  ①画像のファイル名にuuidStringを使用し、Cloud storageにアップロードする
14
12
 
@@ -24,7 +22,7 @@
24
22
 
25
23
 
26
24
 
27
- 下記コード⓪で、storageで画像を参照できています。
25
+ 下記コード⓪で、storageで画像を参照できているので、上記の①でできています。
28
26
 
29
27
 
30
28
 
@@ -100,9 +98,27 @@
100
98
 
101
99
 
102
100
 
101
+ ### 実現したいこと
102
+
103
+ storageで参照できるようになった後に、FireStoreに
104
+
105
+ "gs://" + bucket + fullPathというStringをデータに保存する処理をし、保存出来ています。
103
106
 
104
107
 
105
108
 
109
+ このStringにしたのは、
110
+
111
+ Firebaseコンソールの(ストレージの場所)のURLと全く同じ文字列にすれば、上記の②と③をクリアできると思ったからです。
112
+
113
+
114
+
115
+ ですが、よく見るとそれぞれのuuidStringが異なることに気づきました。
116
+
117
+
118
+
119
+ uuidString以外で設定に使える相応しい文字列が自分では思いつかない為、
120
+
121
+ どういったものだと一致する文字列を実現できるのかお聞きしたいです。
106
122
 
107
123
 
108
124
 

3

変更

2018/07/24 16:37

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -25,6 +25,8 @@
25
25
 
26
26
 
27
27
  下記コード⓪で、storageで画像を参照できています。
28
+
29
+
28
30
 
29
31
  ```ここに言語を入力
30
32
 
@@ -100,64 +102,12 @@
100
102
 
101
103
 
102
104
 
103
- 上記の①まではできていますが、その後
104
-
105
- パスである下記コード①をFireStoreに保存できてません。
106
-
107
- ```ここに言語を入力
108
-
109
- コード①
110
-
111
- //Storageで参照するパス
112
-
113
- let reference = storageRef.child(
114
-
115
- "huga_image/" +
116
-
117
- userID! +
118
-
119
- "/" +
120
-
121
- NSUUID().uuidString + ".jpg")
122
-
123
-
124
-
125
-
126
-
127
- ```
128
105
 
129
106
 
130
107
 
131
108
 
132
109
 
133
110
 
134
-
135
- 下記コード②はFireStoreへ保存する際のメソッド内に書いています。
136
-
137
- このように参照したパスをsetDataしてFireStoreに保存したいのですが出来ません。
138
-
139
-
140
-
141
- ```ここに言語を入力
142
-
143
- コード②
144
-
145
-
146
-
147
- let storage = Storage.storage()
148
-
149
- let storageRef = storage.reference(forURL: "gs://hogehoge.appspot.com")
150
-
151
-
152
-
153
- let uuidStringJpgRef = storageRef.child("huga_image/userID/NSUUID().uuidString.jpg")
154
-
155
- db.collection("hoge").document(userID!).setData()
156
-
157
-
158
-
159
- ```
160
-
161
111
  見ていただければ助かります。
162
112
 
163
113
  宜しくお願いします。

2

変更

2018/07/24 16:19

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -21,6 +21,84 @@
21
21
  ③呼び出すときはFirestoreのデータ内からパスの情報を取得してアクセスする
22
22
 
23
23
  ### できていること
24
+
25
+
26
+
27
+ 下記コード⓪で、storageで画像を参照できています。
28
+
29
+ ```ここに言語を入力
30
+
31
+ //コード⓪
32
+
33
+
34
+
35
+ func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String:Any]) {
36
+
37
+
38
+
39
+ if let pickedImage = info[UIImagePickerControllerEditedImage] as? UIImage {
40
+
41
+ self.hogehogeImageView.image = pickedImage
42
+
43
+ }
44
+
45
+
46
+
47
+ let storage = Storage.storage()
48
+
49
+ let storageRef = storage.reference(forURL: "gs://hogehoge.appspot.com")
50
+
51
+
52
+
53
+ let meta = StorageMetadata()
54
+
55
+ meta.contentType = "image/jpeg"
56
+
57
+
58
+
59
+
60
+
61
+ if let data = UIImagePNGRepresentation(info[UIImagePickerControllerOriginalImage] as! UIImage) {
62
+
63
+
64
+
65
+ let userID = Auth.auth().currentUser?.uid
66
+
67
+
68
+
69
+ let reference1 = storageRef.child(
70
+
71
+ "huga_image/" + userID! + "/" + NSUUID().uuidString + ".jpg")
72
+
73
+
74
+
75
+ reference1.putData(data, metadata: meta, completion: { metaData, error in
76
+
77
+ print(metaData)
78
+
79
+ print(error)
80
+
81
+ })
82
+
83
+ dismiss(animated: true, completion: nil)
84
+
85
+ }
86
+
87
+
88
+
89
+ picker.dismiss(animated: true, completion: nil)
90
+
91
+ }
92
+
93
+
94
+
95
+
96
+
97
+ ```
98
+
99
+
100
+
101
+
24
102
 
25
103
  上記の①まではできていますが、その後
26
104
 

1

変更

2018/07/24 16:16

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- FireStorageのパスをFireStoreに保存するには?
1
+ Firebase StorageのパスをFireStoreに保存するには?
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- FIreStorageで画像をアップして、その画像のパスをFireStoreに保存したいです。
7
+ FIrebase Storageで画像をアップして、その画像のパスをFireStoreに保存したいです。
8
8
 
9
9
 
10
10