तक नहीं पहुंच सकता है, मैं एक छवि साझा करने का इरादा बुला रहा हूं। यह अधिकांश प्रदाताओं के साथ काम करता है, लेकिन Google+ के साथ। Google+ छवि के बिना पोस्ट गतिविधि खोलता है और टोस्ट प्रदर्शित करता है "आप केवल अपने डिवाइस पर संग्रहीत फ़ोटो पोस्ट कर सकते हैं।" एक ही समय में।Google+ का साझा उद्देश्य छवि
File f = storeImage(image); // f = /data/data/com.myapp/files/1333070776978.jpg
Uri uri = Uri.fromFile(f);
Intent share = new Intent(Intent.ACTION_SEND);
share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
share.setType("image/jpeg");
share.putExtra(Intent.EXTRA_STREAM, uri);
share.putExtra(Intent.EXTRA_TITLE,"Share that title");
share.putExtra(Intent.EXTRA_SUBJECT,"Share that subject");
share.putExtra(Intent.EXTRA_TEXT,"Check that out...");
share.putExtra("sms_body", "sms body");
startActivity(Intent.createChooser(share, "Share Image"));
मैं
Context.openFileOutput(fileName, Context.MODE_WORLD_READABLE);
मेरी समझ के साथ छवि को बचाने कि FLAG_GRANT_READ_URI_PERMISSION स्थापना करके, मैं गूगल + इस फ़ाइल के लिए विशिष्ट पहुँच प्रदान किया गया था।
यह काम करता है जब मैं छवि को मीडियास्टोर में संग्रहीत करता हूं, लेकिन मैं वास्तव में उपयोगकर्ताओं की छवि गैलरी को अव्यवस्थित नहीं करना चाहता हूं।
ContentValues values = new ContentValues(2);
values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
values.put(MediaStore.Images.Media.DATA, f.getAbsolutePath());
Uri uri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
किसी भी सलाह
साइमन
आपको हमेशा यह सुनिश्चित कर सकता है क्या फ़ाइल और फ़ोल्डर है अनुमतियाँ, फाइल सिस्टम ग्रहण में डिबग उपकरण का उपयोग कर में देख। यह सुनिश्चित करने के लिए कि आप अनुमतियों की कमी से पीड़ित नहीं हैं। – erbsman
फ़ाइल अनुमतियां अच्छी लगती हैं (-rw-rw-r--)। वैसे भी, एसएमएस ऐप या फेसबुक जैसे अन्य ऐप्स छवि को एक्सेस और साझा कर सकते हैं। – SimonSays
क्या होगा यदि आप Context.getCacheDir() का उपयोग कर छवि को कैश निर्देशिका में संग्रहीत करते हैं? – Freddroid