Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android-邀请朋友参加Facebook上创建的活动_Android_Facebook_Events_Invite - Fatal编程技术网

android-邀请朋友参加Facebook上创建的活动

android-邀请朋友参加Facebook上创建的活动,android,facebook,events,invite,Android,Facebook,Events,Invite,我的代码已经在facebook上创建了一个事件。我也想邀请朋友。经过这么多的研究,我在facebook开发者网站上找到了一些代码。它说: 您可以通过向/event\u ID/invested/USER\u ID发出HTTP POST来邀请用户参加活动。您可以通过向/event\u ID/invested?users=USER\u ID1、USER\u ID2、USER\u ID3发出HTTP POST来邀请多个用户。这两种方法都需要create_event权限,如果邀请成功,则返回true 请告

我的代码已经在facebook上创建了一个事件。我也想邀请朋友。经过这么多的研究,我在facebook开发者网站上找到了一些代码。它说:

您可以通过向/event\u ID/invested/USER\u ID发出HTTP POST来邀请用户参加活动。您可以通过向/event\u ID/invested?users=USER\u ID1、USER\u ID2、USER\u ID3发出HTTP POST来邀请多个用户。这两种方法都需要create_event权限,如果邀请成功,则返回true

请告诉我如何使用此编码邀请朋友


多谢各位

对于新的3.0 SDK,您将使用以下功能:

String eventId = "EVENT_ID";
Bundle params = new Bundle();
params.putString("users", "USER_ID1,USER_ID2,USER_ID3");
Request inviteFriendsRequest = new Request(Session.getActiveSession(),
    eventId + "/invited",
    params,
    HttpMethod.POST,
    new Request.Callback() {
        @Override
        public void onCompleted(Response response) {
            // Handle response
        }
    }
);
Request.executeAsync(inviteFriendsRequest);

用您自己的值替换事件ID和好友列表。

我首先将响应作为JSON响应,然后将结果存储在哈希数组中,并将所选好友ID输入如下数组:

private void inviteFriends()
    {
        try
        {
            Bundle params = new Bundle();
            mAsyncRunner2.request("me/friends" , params , "GET", new RequestListener()
            {

                @Override
                public void onMalformedURLException(MalformedURLException e, Object state)
                {

                }

                @Override
                public void onIOException(IOException e, Object state)
                {

                }

                @Override
                public void onFileNotFoundException(FileNotFoundException e, Object state)
                {

                }

                @Override
                public void onFacebookError(FacebookError e, Object state)
                {

                }

                @Override
                public void onComplete(String response, Object state)
                {
                    try
                    {
                        JSONObject responseJsonObject = new JSONObject(response);
                        Log.d("InviteFriends.inviteFriends().new RequestListener() {...}:onComplete", "FB Response =>"+ responseJsonObject);
                        //event_id = event.getString("id");


                        //JSONObject responseJsonObject = new JSONObject(eventResponse);
                        JSONArray jsonArray = responseJsonObject.getJSONArray("data");


                        for (int i = 0; i < jsonArray.length(); i++)
                        {
                            HashMap<String, String> map = new HashMap<String, String>();
                            JSONObject e = jsonArray.getJSONObject(i);

                            map.put("id",    e.getString("id"));
                            map.put("name",  e.getString("name"));
                            mylist.add(map);

                            userIds = e.getString("id");
                            userName = e.getString("name");
                            Log.d("MainActivity:getAllEvents", "Friend ID, Name:" +  userIds + "," + userName);

                        }
                    }
                    catch (Exception e)
                    {
                        Log.e("log_tag", "Error parsing data "+e.toString());
                    }

                    runOnUiThread(new Runnable() {
                        public void run(){

                            ListAdapter adapter = new SimpleAdapter(getApplicationContext(), mylist , R.layout.friends_main,
                                new String[] {"name" },
                                new int[] {R.id.item_title});

                            Log.d(
                                "InviteFriends.inviteFriends().new RequestListener() {...}.onComplete(...).new Runnable() {...}:run",
                                "Friends->" + mylist.size());

                            setListAdapter(adapter);

                            final ListView lv = getListView();
                            lv.setTextFilterEnabled(true);
                            lv.setOnItemClickListener(new OnItemClickListener() {
                                public void onItemClick(final AdapterView<?> parent, View view, int position, long id) {
                                    @SuppressWarnings("unchecked")
                                    HashMap<String, String> o = (HashMap<String, String>) lv.getItemAtPosition(position);
                                    String selectedName = o.get("name");
                                    String selectedId = o.get("id");
                                    Toast.makeText(InviteFriends.this, "Your friend " + selectedName + " was selected.", Toast.LENGTH_SHORT).show();

                                    selectedFriendsIDs.add(selectedId);
                                    selectedFriendsNames.add(selectedName);
                                    selectedFriendsCount = selectedFriendsIDs.size();

                                    btnSendInvites.setText(selectedFriendsCount + " friends selected");

                                    Log.d("Selected IDs ", "" + selectedFriendsIDs);
                                    Log.d("Selected Names ", "" + selectedFriendsNames);  


                                   //make list null


                                }
                            });
                        }
                    });


                }
            }, null);


        }
        catch (Exception e)
        {

        }
public void inviteSelectedFriends()
    {
        try
        {



            String createdEventID = CreateFbEvent.eventID.toString();


            Log.d("InviteSelectedFriends:inviteSelectedFriends", "size -> " + InviteFriends.selectedFriendsIDs.size());

            for(int i = 0; i < selectedFriendsIDs.size(); i++){


            String inputParm = createdEventID + "/invited/" + selectedFriendsIDs.get(i);
            Log.d("InviteSelectedFriends:inviteSelectedFriends", "inputParm"+inputParm);
            Bundle params = new Bundle();
            mAsyncRunner2.request(inputParm, params, "POST", new RequestListener()
            {

                @Override
                public void onMalformedURLException(MalformedURLException e, Object state)
                {

                }

                public void onIOException1(IOException e, Object state)
                {

                }

                @Override
                public void onFileNotFoundException(FileNotFoundException e, Object state)
                {

                }

                @Override
                public void onFacebookError(FacebookError e, Object state)
                {

                }

                @Override
                public void onComplete(String response, Object state)
                {
                    try
                    {
                        JSONObject eventResponse = new JSONObject(response);
                        //event_id = event.getString("id");
                        Log.i(tag, "Event Response => " + eventResponse);
                        //Log.w("myapp", inputParm);
                        //Log.d("InviteSelectedFriends:inviteSelectedFriends", "INPUT PARAM->"+ inputParm.toString());

                    }
                    catch (Exception e)
                    {

                    }
                }

                @Override
                public void onIOException(IOException e, Object state)
                {
                    // TODO Auto-generated method stub

                }
            }, null);
          }
        }
        catch (Exception e)
        {

        }
    }
然后我邀请朋友,一个接一个地进入for循环,如下所示:

private void inviteFriends()
    {
        try
        {
            Bundle params = new Bundle();
            mAsyncRunner2.request("me/friends" , params , "GET", new RequestListener()
            {

                @Override
                public void onMalformedURLException(MalformedURLException e, Object state)
                {

                }

                @Override
                public void onIOException(IOException e, Object state)
                {

                }

                @Override
                public void onFileNotFoundException(FileNotFoundException e, Object state)
                {

                }

                @Override
                public void onFacebookError(FacebookError e, Object state)
                {

                }

                @Override
                public void onComplete(String response, Object state)
                {
                    try
                    {
                        JSONObject responseJsonObject = new JSONObject(response);
                        Log.d("InviteFriends.inviteFriends().new RequestListener() {...}:onComplete", "FB Response =>"+ responseJsonObject);
                        //event_id = event.getString("id");


                        //JSONObject responseJsonObject = new JSONObject(eventResponse);
                        JSONArray jsonArray = responseJsonObject.getJSONArray("data");


                        for (int i = 0; i < jsonArray.length(); i++)
                        {
                            HashMap<String, String> map = new HashMap<String, String>();
                            JSONObject e = jsonArray.getJSONObject(i);

                            map.put("id",    e.getString("id"));
                            map.put("name",  e.getString("name"));
                            mylist.add(map);

                            userIds = e.getString("id");
                            userName = e.getString("name");
                            Log.d("MainActivity:getAllEvents", "Friend ID, Name:" +  userIds + "," + userName);

                        }
                    }
                    catch (Exception e)
                    {
                        Log.e("log_tag", "Error parsing data "+e.toString());
                    }

                    runOnUiThread(new Runnable() {
                        public void run(){

                            ListAdapter adapter = new SimpleAdapter(getApplicationContext(), mylist , R.layout.friends_main,
                                new String[] {"name" },
                                new int[] {R.id.item_title});

                            Log.d(
                                "InviteFriends.inviteFriends().new RequestListener() {...}.onComplete(...).new Runnable() {...}:run",
                                "Friends->" + mylist.size());

                            setListAdapter(adapter);

                            final ListView lv = getListView();
                            lv.setTextFilterEnabled(true);
                            lv.setOnItemClickListener(new OnItemClickListener() {
                                public void onItemClick(final AdapterView<?> parent, View view, int position, long id) {
                                    @SuppressWarnings("unchecked")
                                    HashMap<String, String> o = (HashMap<String, String>) lv.getItemAtPosition(position);
                                    String selectedName = o.get("name");
                                    String selectedId = o.get("id");
                                    Toast.makeText(InviteFriends.this, "Your friend " + selectedName + " was selected.", Toast.LENGTH_SHORT).show();

                                    selectedFriendsIDs.add(selectedId);
                                    selectedFriendsNames.add(selectedName);
                                    selectedFriendsCount = selectedFriendsIDs.size();

                                    btnSendInvites.setText(selectedFriendsCount + " friends selected");

                                    Log.d("Selected IDs ", "" + selectedFriendsIDs);
                                    Log.d("Selected Names ", "" + selectedFriendsNames);  


                                   //make list null


                                }
                            });
                        }
                    });


                }
            }, null);


        }
        catch (Exception e)
        {

        }
public void inviteSelectedFriends()
    {
        try
        {



            String createdEventID = CreateFbEvent.eventID.toString();


            Log.d("InviteSelectedFriends:inviteSelectedFriends", "size -> " + InviteFriends.selectedFriendsIDs.size());

            for(int i = 0; i < selectedFriendsIDs.size(); i++){


            String inputParm = createdEventID + "/invited/" + selectedFriendsIDs.get(i);
            Log.d("InviteSelectedFriends:inviteSelectedFriends", "inputParm"+inputParm);
            Bundle params = new Bundle();
            mAsyncRunner2.request(inputParm, params, "POST", new RequestListener()
            {

                @Override
                public void onMalformedURLException(MalformedURLException e, Object state)
                {

                }

                public void onIOException1(IOException e, Object state)
                {

                }

                @Override
                public void onFileNotFoundException(FileNotFoundException e, Object state)
                {

                }

                @Override
                public void onFacebookError(FacebookError e, Object state)
                {

                }

                @Override
                public void onComplete(String response, Object state)
                {
                    try
                    {
                        JSONObject eventResponse = new JSONObject(response);
                        //event_id = event.getString("id");
                        Log.i(tag, "Event Response => " + eventResponse);
                        //Log.w("myapp", inputParm);
                        //Log.d("InviteSelectedFriends:inviteSelectedFriends", "INPUT PARAM->"+ inputParm.toString());

                    }
                    catch (Exception e)
                    {

                    }
                }

                @Override
                public void onIOException(IOException e, Object state)
                {
                    // TODO Auto-generated method stub

                }
            }, null);
          }
        }
        catch (Exception e)
        {

        }
    }
希望这有帮助