2016-02-06 4 views
8

पर ऐप के टेक्स्ट में टेक्स्ट कैसे साझा कर सकता हूं इस कोड का उपयोग केवल कण संख्या संख्या को खोलें लेकिन टेक्स्ट साझा नहीं है। मैं यह कैसे कर सकता हूं?मैं विशेष संख्या

public class MainActivity extends AppCompatActivity { 
Button Wa; 
String id = "+919000000000"; 
EditText txt; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    txt = (EditText)findViewById(R.id.editText); 
    Wa = (Button)findViewById(R.id.btn_whatsapp); 
    Wa.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Uri uri = Uri.parse("smsto:" + id); 
      Intent waIntent = new Intent(Intent.ACTION_SENDTO,uri); 

      String text = "testing message"; 
      waIntent.setPackage("com.whatsapp"); 
      if (waIntent != null) { 
       waIntent.putExtra(Intent.EXTRA_TEXT, text); 
       startActivity(Intent.createChooser(waIntent, text)); 
      } else { 
       Toast.makeText(getApplicationContext(), "WhatsApp not found", Toast.LENGTH_SHORT) 
         .show(); 
      } 

     } 
    }); 

} 
+0

व्हाट्सएप के रूप में एसएमएस कैसे भेजें http://stackoverflow.com/q/9798657/1168654 –

+0

http://stackoverflow.com/a/19179175/1168654 –

+0

इस इरादे की प्रतीक्षा करें = नया इरादा (android.content .Intent.ACTION_SEND); waIntent.setType ("टेक्स्ट/सादा"); – KCN

उत्तर

1

आप "smsto:", "text/plain" प्रकार आप में मदद मिलेगी के रूप में के रूप में यह हासिल करने की कोशिश के बाद से। "sms_body" के रूप में अतिरिक्त प्रयास करें यदि यह मदद नहीं करेगा।

Uri uri = Uri.parse("smsto:" + id); 
Intent waIntent = new Intent(Intent.ACTION_SENDTO,uri); 
String text = "testing message"; 
waIntent.setPackage("com.whatsapp"); 
if (waIntent != null) { 
    waIntent.setType("text/plain"); 
    //waIntent.putExtra(Intent.EXTRA_TEXT, text); 
    waIntent.putExtra("sms_body", text); 
    startActivity(Intent.createChooser(waIntent, text)); 
} else { 
    Toast.makeText(getApplicationContext(), "WhatsApp not found", Toast.LENGTH_SHORT) 
      .show(); 
} 
+0

यह काम नहीं कर रहा है .... –

+0

"टेक्स्ट/सादे" के बजाय, "संदेश/आरएफसी 822" –

0

कृपया इस stackoverflow के माध्यम से जाने लिंक

  1. Sending message through WhatsApp
  2. Send text to specific contact

ऐसा लगता है कि WhatsApp अभी भी शामिल नहीं है इस fetaure का समर्थन किया है। आप विशेष नंबर के लिए केवल चैट इतिहास खुला नीचे दिए गए कोड का उपयोग कर सकते हैं

try { 
      Uri mUri = Uri.parse("smsto:+98xxxxxxxx"); 
      Intent mIntent = new Intent(Intent.ACTION_SENDTO, mUri); 
      mIntent.setPackage("com.whatsapp"); 

//   mIntent.putExtra("sms_body", "My body"); 
      mIntent.putExtra(Intent.EXTRA_TEXT, "This is my text to send."); 

      startActivity(mIntent); 
     } catch (Exception e) { 
      // alert WhatsApp in not installed 
     } 
+0

पहले से ही प्रयास करें .. लेकिन यह काम नहीं करता है। –

0

कुछ इस तरह का प्रयास करें:

public class MainActivity extends AppCompatActivity { 
    Button Wa; 
    String id = "+919000000000"; 
    EditText txt; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     txt = (EditText)findViewById(R.id.editText); 
     Wa = (Button)findViewById(R.id.btn_whatsapp); 
     Wa.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       PackageManager pm=getPackageManager(); 
       try { 
        Uri uri = Uri.parse("smsto:" + number); 
        Intent i = new Intent(Intent.ACTION_SENDTO, uri); 
        waIntent.setType("text/plain"); 
        String text = "testing message"; 

        PackageInfo info=pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA); 
        waIntent.setPackage("com.whatsapp"); 
        waIntent.putExtra(Intent.EXTRA_TEXT, text); 
        startActivity(Intent.createChooser(waIntent, text)); 
       } 
       catch (NameNotFoundException e) { 
        Toast.makeText(this, "WhatsApp not found", Toast.LENGTH_SHORT).show(); 
       } 
      } 
     }); 
    } 
} 
0

उत्तर से Here

इससे पहले यह संभव नहीं था लेकिन जब से मई 15 अपडेट करें। चेकआउट:

try{ 
    PackageInfo info = pm.getPackageInfo("com.whatsapp", PackageManager.GET_META_DATA); 
    Intent sendIntent = new Intent(); 
    sendIntent.setAction(Intent.ACTION_SEND); 
    String sendString = "some random string"; 
    sendIntent.setPackage("com.whatsapp"); 
    sendIntent.putExtra(Intent.EXTRA_TEXT, sendString); 
    sendIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file)); 
    sendIntent.setType("image/*"); 
    startActivity(sendIntent); 
} catch (Exception e){ 
    // some code 
} 

यहां पैकेजइन्फो लाइन यह जांचने के लिए है कि व्हाट्सएप इंस्टॉल है या नहीं। अगर नहीं तो यह अपवाद फेंकता है। आप केवल अनदेखा कर सकते हैं कि यदि आप एक सामान्य शेयर करना चाहते हैं (और सेटपैकेज भी)।

भी। यह महत्वपूर्ण है कि जिस मीडिया को आप साझा करना चाहते हैं उसे सार्वजनिक भंडारण पर सार्वजनिक रूप से उपलब्ध होना चाहिए।

अद्यतन

एक विशिष्ट संपर्क

Uri uri = Uri.parse("smsto:" + "<CONTACT_NUMBER>"); 
Intent i = new Intent(Intent.ACTION_SENDTO, uri); 
i.putExtra(Intent.EXTRA_TEXT, whatsAppMessage); 

कार्रवाई के रूप में करने के लिए भेजने के लिए भेजें अब अनुमति दी है।

संबंधित मुद्दे