2010-12-15 13 views
7

मेरे एंड्रॉइड ऐप में, मैं चाहता हूं कि उपयोगकर्ता अपनी ऐप में अपने ऐप को "साझा करें", इसलिए मैं उन्हें अपनी दीवार पर एक पूर्वनिर्धारित सामग्री स्थिति पोस्ट करना चाहता हूं।एंड्रॉइड के लिए फेसबुक एसडीके से फेसबुक फीड डायलॉग में सामग्री जोड़ना

मैं दीवार की स्थिति को कैसे अनुकूलित कर सकता हूं? (मैं अपना ऐप आइकन और कुछ भड़काना पाठ जोड़ना चाहता हूं)।

+0

यह साझा करें यूआरएल के माध्यम से फेसबुक एसडीके के बिना भी किया जा सकता है। आप निश्चित रूप से एसडीके चाहते हैं? –

+0

मैं सबसे आसान तरीका संभव चाहता हूं। :) – oriharel

+0

ठीक है, तो शेयरर यूआरएल के साथ सबसे आसान तरीका है, नीचे नमूना देखें। –

उत्तर

2

तुम भी ऐसा कर सकते हैं एसडीके के बिना, बस शेयर यूआरएल द्वारा:

public void shareOnFacebook(View v) { 

    Uri uri = Uri.parse("http://m.facebook.com/sharer.php?u=http://yourdomain/page.html&t=YourMessage"); 
    Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
    startActivity(intent); 
} 

तुम बस किसी सामग्री पृष्ठ/HTML यूआरएल के तहत, अपने सर्वर पर कहीं लगाने की जरूरत है अपने हिस्सेदार के लिए प्रदान की।

यदि आप चाहते हैं कि एक निश्चित छवि साझा संदेश में प्रकट होता है, सर्वर पर अपने html पेज के मेटा टैग में रखते है कि आप साझा कर रहे हैं:

<link rel="image_src" type="image/jpeg" href="http://yourdomain.com/promo/image.png" /> 

इस तरह के प्रोमो पेज का एक नमूना देखें लिंक की गई छवि के साथ: http://www.modelme.co.uk/promo/amandaharrington

+0

क्या होगा यदि मेरे पास सर्वर नहीं है? बस एक साधारण देशी ऐप? – oriharel

+2

फिर यह दृष्टिकोण काम नहीं करता है। लेकिन जब तक यह ब्राउज़र के माध्यम से सार्वजनिक रूप से उपलब्ध नहीं है, तब तक आप इसे कहीं भी, किसी भी फ्रीहोस्टिंग स्पेस (यानी http://sites.google.com/) डाल सकते हैं। –

5

फेसबुक एसडीके डाउनलोड करें और इसे अपनी परियोजना में आयात करें। तब अधिकृत करें के लिए निम्न कोड का उपयोग करें:

class AuthorizeListener implements DialogListener { 
    public void onComplete(Bundle values) { 
     Bundle parameters = new Bundle(); 
      parameters.putString("message", "<Message_you_want_to_send>");// the message to post to the wall 
      facebookClient.dialog(<Current_class>.this, "stream.publish", parameters, this);// "stream.publish" is an API call 
    } 
    @Override 
    public void onFacebookError(FacebookError e) { 
    } 
    @Override 
    public void onError(DialogError e) { 
    } 
    @Override 
    public void onCancel() { 
    } 
} 

आपका आवेदन नाम और चिह्न स्वचालित रूप से जोड़ दिया जाएगा :)

+0

धन्यवाद, लेकिन यह वही नहीं है जो मैं चाहता हूं। यह टेक्स्ट बॉक्स में टेक्स्ट रखता है। मैं उपयोगकर्ता को पूर्वनिर्धारित सामग्री के शीर्ष पर टेक्स्ट जोड़ने का मौका देना चाहता हूं। जब आप YouTube से कोई वीडियो साझा करते हैं, तो पॉप-अप होता है, स्थिति जोड़ने के लिए एक खाली टेक्स्टबॉक्स होता है, और YouTube सामग्री के नीचे (इस उदाहरण में, एक एम्बेडेड वीडियो और टेक्स्ट)। यह वह अनुभव है जिसे मैं अपने उपयोगकर्ताओं के पास रखना चाहता हूं। – oriharel

+0

मेरे द्वारा पोस्ट किया गया कोड दीवार पर बस एक साधारण पोस्ट है। यदि आप https://github.com/facebook/facebook-android-sdk पर एसडीके देखते हैं तो आप देखेंगे कि आप जितने चाहें उतने विकल्प हैं। – Galip

+0

असल में इस पृष्ठ में प्रलेखन बहुत कम है (यानी बंडल में जोड़ने के लिए वैकल्पिक पैरामीटर की कोई सूची नहीं है)। मुझे लगता है कि फेसबुक एपीआई (मानक, एंड्रॉइड नहीं) माना जाता है। – oriharel

3

फेसबुक सीखने के बाद:

public void sendtoFacebook(){ 
     facebookClient = new Facebook("<Your_APP_ID"); 
     facebookClient.authorize(<Current_class>.this, new AuthorizeListener()); 
    } 

अब आप निम्नलिखित methodes जोड़ने के लिए एपीआई, मैं इस page

पर आया, इसलिए अब मैं बंडल पैरामीटर के लिए सभी विकल्पों को जानता हूं। आपकी मदद के लिए सभी को धन्यवाद!

2

इस तरह मैं फेसबुक एसडीके

Bundle parameters = new Bundle(); 
     parameters.putString("app_id", "xxxxxxx"); 
     parameters.putString("link", "https://play.google.com/store/apps/details?id=myappistasty"); 
     parameters.putString("name", "This is the name of the link set in app."); 
     parameters.putString("caption", "This is Text that is specified in bt the aoo"); 
     parameters.putString("picture", "www.urltoimage.com); 
facebook.dialog(MainActivity.this, "feed", parameters, new DialogListener() { 
etc... 

http://developers.facebook.com/docs/reference/dialogs/feed/ इस लिंक है कि मेरे पास सब समझाया है का उपयोग कर एक फेसबुक संवाद के माध्यम से सामग्री स्थापित करने के लिए एक बंडल बनाने रहा है, हालांकि यह से कोई भी जावा में है टेबल आपको एक अच्छा विचार देता है।