Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

एंड्रॉइड में व्हाट्सएप के माध्यम से संदेश भेजना?

एंड्रॉइड में व्हाट्सएप के माध्यम से संदेश भेजना

यह गाइड दिखाता है कि ACTION_SEND इंटेंट का उपयोग करके टेक्स्ट/मीडिया को व्हाट्सएप पर कैसे साझा किया जाए, जिसमें ऐप-इंस्टॉल जांच और फॉलबैक शामिल है।

बुनियादी कार्यान्वयन

public void sendWhatsAppMessage(String phoneNumber, String message) {
    // phoneNumber वैकल्पिक: "91XXXXXXXXXX" प्रारूप (देश कोड, कोई + नहीं)
    try {
        Intent intent = new Intent(Intent.ACTION_SEND);
        intent.setType("text/plain");
        intent.setPackage("com.whatsapp"); // केवल व्हाट्सएप तक सीमित
        if (!TextUtils.isEmpty(phoneNumber)) {
            intent.putExtra("jid", phoneNumber + "@s.whatsapp.net"); // विशिष्ट चैट खोलता है
        }
        intent.putExtra(Intent.EXTRA_TEXT, message);
        startActivity(intent);
    } catch (ActivityNotFoundException e) {
        Toast.makeText(this, "व्हाट्सएप इंस्टॉल नहीं है", Toast.LENGTH_SHORT).show();
        // वैकल्पिक: Play Store खोलें
        // startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.whatsapp")));
    }
}

चयनकर्ता के साथ उपयोग (उपयोगकर्ता को संपर्क चुनने दें)

public void shareViaWhatsApp(String text) {
    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("text/plain");
    intent.putExtra(Intent.EXTRA_TEXT, text);
    // setPackage न लगाएं — चयनकर्ता दिखाता है, उपयोगकर्ता व्हाट्सएप चुनता है
    startActivity(Intent.createChooser(intent, "व्हाट्सएप के माध्यम से साझा करें"));
}

मीडिया (इमेज/वीडियो/डॉक्यूमेंट) साझा करना

public void sendWhatsAppMedia(Uri mediaUri, String mimeType, String caption) {
    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType(mimeType); // "image/*", "video/*", "application/pdf"
    intent.setPackage("com.whatsapp");
    intent.putExtra(Intent.EXTRA_STREAM, mediaUri);
    if (caption != null) intent.putExtra(Intent.EXTRA_TEXT, caption);
    intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    try {
        startActivity(intent);
    } catch (ActivityNotFoundException e) {
        Toast.makeText(this, "व्हाट्सएप इंस्टॉल नहीं है", Toast.LENGTH_SHORT).show();
    }
}

WhatsApp Business / व्हाट्सएप वेब

  • WhatsApp Business: पैकेज com.whatsapp.w4b।
  • व्हाट्सएप वेब: https://wa.me/?text= URL के साथ ACTION_VIEW का उपयोग करें।

पूर्ण UI उदाहरण

<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="24dp">

    <EditText
        android:id="@+id/etPhone"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="फोन (वैकल्पिक, देश कोड सहित)"
        android:inputType="phone" />

    <EditText
        android:id="@+id/etMessage"
        android:layout_width="match_parent"
        android:layout_height="120dp"
        android:layout_marginTop="12dp"
        android:hint="संदेश"
        android:gravity="top" />

    <Button
        android:id="@+id/btnSend"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:text="व्हाट्सएप पर भेजें" />
</LinearLayout>
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        EditText etPhone = findViewById(R.id.etPhone);
        EditText etMsg = findViewById(R.id.etMessage);
        Button btn = findViewById(R.id.btnSend);

        btn.setOnClickListener(v -> {
            String phone = etPhone.getText().toString().trim();
            String msg = etMsg.getText().toString().trim();
            if (msg.isEmpty()) {
                Toast.makeText(this, "संदेश दर्ज करें", Toast.LENGTH_SHORT).show();
                return;
            }
            sendWhatsAppMessage(phone, msg);
        });
    }
    // sendWhatsAppMessage विधि यहां...
}

सामान्य समस्याएं

समस्यासमाधान
चयनकर्ता में व्हाट्सएप दिखाई नहीं देतासुनिश्चित करें कि setType("text/plain") सेट है; कुछ डिवाइसों पर setPackage चयनकर्ता को बायपास करता है।
फोन नंबर पैरामीटर अनदेखा किया गयाjid एक्स्ट्रा अनौपचारिक है; कुछ संस्करणों पर काम नहीं कर सकता। विश्वसनीय डीप लिंकिंग के लिए https://wa.me/ का उपयोग करें।
मीडिया नहीं भेजा गयाFLAG_GRANT_READ_URI_PERMISSION और FileProvider (ऐप-विशिष्ट फ़ाइलों के लिए) का उपयोग करें।

मूल उदाहरण की समीक्षा

मूल कोड PackageManager.getPackageInfo का उपयोग इंस्टॉल जांच के लिए करता था (धीमा, अनावश्यक), हार्डकोडेड "YOUR TEXT HERE", और कोई फॉलबैक UI नहीं था। ऊपर दिया गया संस्करण मानक ActivityNotFoundException पैटर्न, वैकल्पिक फोन नंबर, और मीडिया सपोर्ट का उपयोग करता है।

  1. एंड्रॉइड पर व्हाट्सऐप क्रैश होने से कैसे रोकें - त्वरित समाधान और समस्या निवारण एंड्रॉइड पर व्हाट्सऐप क्रैश होने से कैसे रोकें - त्वरित समाधान और समस्या निवारण

    व्हाट्सऐप अधिक मज़ेदार और रचनात्मक है जो दोस्तों, परिवार के सदस्यों, ऑफिस के सहकर्मियों और कई अन्य लोगों से कहीं भी, कभी भी जुड़ने में मदद करता है। लेकिन अन्य ऑनलाइन ऐप्स की तरह, व्हाट्सऐप भी कभी-कभी परफेक्ट नहीं होता। कुछ उपयोगकर्ताओं की शिकायत है कि ऐप कई बार काम नहीं करता और अपने आप क्रैश होकर ब

  1. एंड्रॉइड पर व्हाट्सएप मैसेज शेड्यूल करें: चरण-दर-चरण गाइड एंड्रॉइड पर व्हाट्सएप मैसेज शेड्यूल करें: चरण-दर-चरण गाइड

    WhatsApp ने मैसेजिंग और टेक्स्टिंग के पारंपरिक तरीकों को लगभग बदल दिया है। असंख्य सुविधाओं के अलावा, WhatsApp सुरक्षित, विश्वसनीय और किफायती है। वीडियो कॉल की लोकप्रियता उभरने के बाद से, WhatsApp ने आपको मुफ्त वॉयस और वीडियो कॉल प्रदान करना शुरू कर दिया।   हालांकि, एक ऐसी सुविधा की मांग रही ह

  1. नवीनतम एंड्रॉइड फिंगरप्रिंट लॉक अपडेट से व्हाट्सऐप सुरक्षित करें नवीनतम एंड्रॉइड फिंगरप्रिंट लॉक अपडेट से व्हाट्सऐप सुरक्षित करें

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