বাংলায় অ্যান্ড্রয়েড সহায়িকা - Bangla Android Guide

লোকাল সার্ভিস যুক্ত করুন

যদি আপনি একটি লোকাল সার্ভিস সরবরাহ করতে থাকেন, আপনার এটা সার্ভিস ডিসকভারির জন্য রেজিস্টার করতে হবে। একসময় আপনার লোকাল সার্ভিস রেজিস্টার হেেয় থাকে, পিয়ার থেকে সার্ভিস ডিসকভারী রিকোয়েস্ট এ ফ্রেমওয়ার্ক স্বয়ংক্রিয়ভাবে রেসপন্স করবে।

একটি লোকাল সার্ভিস তৈরী করতে:

  1. একটি WifiP2pServiceInfo অবজেক্ট তৈরী করুন

  2. আপনার সার্ভিস সম্পর্কিত তথ্য এটার সাথে প্রচারিত করুন

  3. সার্ভিস ডিসকভারির জন্য লোকাল সার্ভিস রেজিস্টার করতে addLocalService()কল করুন

private void startRegistration() {
        //  Create a string map containing information about your service.
        Map record = new HashMap();
        record.put("listenport", String.valueOf(SERVER_PORT));
        record.put("buddyname", "John Doe" + (int) (Math.random() * 1000));
        record.put("available", "visible");

        // Service information.  Pass it an instance name, service type
        // _protocol._transportlayer , and the map containing
        // information other devices will want once they connect to this one.
        WifiP2pDnsSdServiceInfo serviceInfo =
                WifiP2pDnsSdServiceInfo.newInstance("_test", "_presence._tcp", record);

        // Add the local service, sending the service info, network channel,
        // and listener that will be used to indicate success or failure of
        // the request.
        mManager.addLocalService(channel, serviceInfo, new ActionListener() {
            @Override
            public void onSuccess() {
                // Command successful! Code isn't necessarily needed here,
                // Unless you want to update the UI or add logging statements.
            }

            @Override
            public void onFailure(int arg0) {
                // Command failed.  Check for P2P_UNSUPPORTED, ERROR, or BUSY
            }
        });
    }