質問編集履歴

2

他アプリから参照可能な場所にファイルをコピーする方法では共有に成功

2016/06/16 00:17

投稿

rtamura
rtamura

スコア34

test CHANGED
File without changes
test CHANGED
@@ -200,7 +200,11 @@
200
200
 
201
201
  上記のコードで方法2を実装しました。
202
202
 
203
+
204
+
205
+ 2016/06/16追記
206
+
203
- 現在は方法1でGmailに応できるかを検証するめ、方法1を実装中です
207
+ 方法1で実装することでGmail,Twitter画像を渡すことが一応できました。
204
208
 
205
209
 
206
210
 
@@ -222,4 +226,4 @@
222
226
 
223
227
 
224
228
 
225
- 対応方法をご存知でしたらご教授いただけますと幸いです。よろしくお願いいたします。
229
+ ContentProviderを使用した対応方法をご存知でしたらご教授いただけますと幸いです。よろしくお願いいたします。

1

質問に不要なソースコード部分を削除

2016/06/16 00:17

投稿

rtamura
rtamura

スコア34

test CHANGED
File without changes
test CHANGED
@@ -134,80 +134,62 @@
134
134
 
135
135
  }
136
136
 
137
-
137
+ }
138
-
138
+
139
- /**
139
+ ```
140
-
141
- * asset内のパスをURIへ変換した文字列を取得します
140
+
142
-
141
+
142
+
143
- * @param name asset内のパス
143
+ - MainActivity.java
144
-
144
+
145
- * @return 変換後のURI
145
+ メインアクティビティクラスです。画面内のボタンを押すとIntentを発行するイベントを登録しています。
146
-
146
+
147
- */
147
+ ```java
148
+
149
+
150
+
148
-
151
+ // メインアクティビティのボタンにIntent発行すイベントを登録する
152
+
149
- public static Uri getContentUri(String name) {
153
+ public class MainActivity extends Activity {
154
+
150
-
155
+ @Override
156
+
157
+ protected void onCreate(Bundle savedInstanceState) {
158
+
159
+ super.onCreate(savedInstanceState);
160
+
161
+ setContentView(R.layout.activity_main);
162
+
163
+ Button btn = (Button) findViewById(R.id.btn); // ボタンを取得
164
+
165
+ btn.setOnClickListener(new View.OnClickListener() {
166
+
167
+ @Override
168
+
169
+ public void onClick(View v){
170
+
171
+ // "sample.png"が共有したい画像で,ファイルは`asset`ディレクトリの直下に配置しております。
172
+
173
+ Uri theUri = Uri.parse("content://com.example.r_tamura.app.provider.Asset/sample.png");
174
+
175
+ Intent shareIntent = new Intent(Intent.ACTION_SEND);
176
+
151
- return Uri.parse(URL + "/" + name);
177
+ shareIntent.setType("image/*");
178
+
179
+ shareIntent.putExtra(Intent.EXTRA_STREAM, theUri);
180
+
181
+ shareIntent.putExtra(Intent.EXTRA_SUBJECT, "サンプルタイトル");
182
+
183
+ shareIntent.putExtra(Intent.EXTRA_TEXT, "サンプルメッセージ"));
184
+
185
+ shareIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
186
+
187
+ startActivity(Intent.createChooser(i, "Chooserタイトル"));
188
+
189
+ }
152
190
 
153
191
  }
154
192
 
155
- }
156
-
157
- ```
158
-
159
-
160
-
161
- - MainActivity.java
162
-
163
- メインアクティビティクラスです。画面内のボタンを押すとIntentを発行するイベントを登録しています。
164
-
165
- ```java
166
-
167
-
168
-
169
- // メインアクティビティのボタンにIntent発行すイベントを登録する
170
-
171
- public class MainActivity extends Activity {
172
-
173
- @Override
174
-
175
- protected void onCreate(Bundle savedInstanceState) {
176
-
177
- super.onCreate(savedInstanceState);
178
-
179
- setContentView(R.layout.activity_main);
180
-
181
- Button btn = (Button) findViewById(R.id.btn); // ボタンを取得
182
-
183
- btn.setOnClickListener(new View.OnClickListener() {
184
-
185
- @Override
186
-
187
- public void onClick(View v){
188
-
189
- // "sample.png"が共有したい画像で,ファイルは`asset`ディレクトリの直下に配置しております。
190
-
191
- Uri theUri = Uri.parse("content://com.example.r_tamura.app.provider.Asset/sample.png");
192
-
193
- Intent shareIntent = new Intent(Intent.ACTION_SEND);
194
-
195
- shareIntent.setType("image/*");
196
-
197
- shareIntent.putExtra(Intent.EXTRA_STREAM, theUri);
198
-
199
- shareIntent.putExtra(Intent.EXTRA_SUBJECT, "サンプルタイトル");
200
-
201
- shareIntent.putExtra(Intent.EXTRA_TEXT, "サンプルメッセージ"));
202
-
203
- shareIntent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
204
-
205
- startActivity(Intent.createChooser(i, "Chooserタイトル"));
206
-
207
- }
208
-
209
- }
210
-
211
193
 
212
194
 
213
195
  ```