0

私は 2 つのアプリを持っています:App1画像を取得してアドレス (写真が撮影された場所) に割り当てるアプリと、App2画像とテキスト (アドレス) を取得する別のアプリですApp1。ユーザーが のボタンをクリックするApp1と、この画像とテキストを に渡す必要がありますApp2

今まで、をApp2使用して画像を正常に送信できましたACTION_SEND。画像と一緒にテキストを送信するにはどうすればよいですか?

私はすでにこのAndroidチュートリアルを見ました: http://developer.android.com/training/sharing/send.html#send-multiple-content

ただし、複数の画像を送信することについて説明しており、画像とテキストを送信することはありません。

4

2 に答える 2

1

テキストと画像を保持して送信するParcelableオブジェクトを作成してみてください。Parcelableについては、 http: //developer.android.com/reference/android/os/Parcelable.htmlをご覧ください。

MyObject obj = new MyObject();
obj.text = "some text";
obj.image = imageUri;

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
shareIntent.putExtras("MyObj", obj);
startActivity(Intent.createChooser(shareIntent, "Share images to.."));

public class MyObject implements Parcelable{
private String image;
private String text;
public void setImage(String _image){
image = _image;
}
public void setText(String _text){
text = _text;
}
public String getImage(){
return image;
}
public String getText(){
return text;
}
public MyObject(Parcel in) {
        readFromParcel(in);
    }
@Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {

        dest.writeString(image);
        dest.writeString(text);
    }
private void readFromParcel(Parcel in) {

        image = in.readString();
        text = in.readString();
    }
public static final Parcelable.Creator CREATOR =
        new Parcelable.Creator() {
            public MyObject createFromParcel(Parcel in) {
                return new MyObject(in);
            }

            public MyObject[] newArray(int size) {
                return new MyObject[size];
            }
        };

}
于 2013-01-25T15:16:59.133 に答える
1

テキストに putExtra を追加することで、投稿したサンプルを使用できます。

ArrayList<Uri> imageUris = new ArrayList<Uri>();
imageUris.add(imageUri1); // Add your image URIs here
imageUris.add(imageUri2);

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);
shareIntent.setType("image/*");

これで追加できます:

shareIntent.putExtra("yourkey", "yourtext");
startActivity(Intent.createChooser(shareIntent, "Share images to.."));
于 2013-01-25T15:20:58.447 に答える