Php 加载android客户端联系人列表时出现问题

Php 加载android客户端联系人列表时出现问题,php,android,mysql,Php,Android,Mysql,我开发了一个类似于聊天应用程序的android客户端,该应用程序显示使用同一应用程序的用户的联系人列表 问题在于加载联系人列表太慢。这是我申请的主页 我使用了Aysnc任务,并在后台运行繁重的操作(仅在主线程中运行与UI相关的任务),还使用HTTP请求执行与服务器相关的任务,使用GET和POST 我使用了php和mysql进行服务器集成。请帮助我找到将联系人加载到我的客户端应用程序延迟的原因 请回复。该线程应该为您完成。 这可能是这样的: public void somemethod()

我开发了一个类似于聊天应用程序的android客户端,该应用程序显示使用同一应用程序的用户的联系人列表

问题在于加载联系人列表太慢。这是我申请的主页

我使用了Aysnc任务,并在后台运行繁重的操作(仅在主线程中运行与UI相关的任务),还使用HTTP请求执行与服务器相关的任务,使用GETPOST

我使用了phpmysql进行服务器集成。请帮助我找到将联系人加载到我的客户端应用程序延迟的原因


请回复。

线程应该为您完成。
这可能是这样的:

    public void somemethod(){
     Thread t = new Thread() {
            public void run() {
                doyourTask();
            }
        };
        t.start();
}

package com.dextrols.bol_messanger.fragments;
导入静态com.dextrols.bol\u messanger.pushnotifications.CommonUtilities.DISPLAY\u MESSAGE\u ACTION;
导入静态com.dextrols.bol_messanger.pushnotifications.CommonUtilities.EXTRA_MOBILE_号码;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入org.apache.http.NameValuePair;
导入org.apache.http.message.BasicNameValuePair;
导入org.json.JSONArray;
导入org.json.JSONException;
导入org.json.JSONObject;
导入android.app.ActionBar;
导入android.app.Activity;
导入android.app.Dialog;
导入android.app.ProgressDialog;
导入android.content.BroadcastReceiver;
导入android.content.ContentResolver;
导入android.content.ContentValues;
导入android.content.Context;
导入android.content.Intent;
导入android.content.IntentFilter;
导入android.database.Cursor;
导入android.graphics.Color;
导入android.graphics.drawable.ColorDrawable;
导入android.net.ConnectivityManager;
导入android.net.Uri;
导入android.os.AsyncTask;
导入android.os.Bundle;
导入android.os.StrictMode;
导入android.provider.Contacts.People;
导入android.provider.contacts合同;
导入android.provider.contacts contract.CommonDataTypes.Phone;
导入android.provider.ContactsContract.PhoneLookup;
导入android.util.Log;
导入android.view.Menu;
导入android.view.MenuInflater;
导入android.view.MenuItem;
导入android.view.view;
导入android.view.Window;
导入android.widget.AbsListView;
导入android.widget.AbsListView.OnScrollListener;
导入android.widget.EditText;
导入android.widget.ListView;
导入android.widget.RelativeLayout;
导入android.widget.TextView;
导入android.widget.Toast;
导入com.dextrols.bol_messanger.fragments.Profile_设置_Child_Fragment.Load_All;
导入com.dextrols.bol_messanger.invite_utils.invite_活动;
导入com.dextrols.bol_messanger.pushnotifications.AlertDialogManager;
导入com.dextrols.bol_messanger.pushnotifications.ConnectionDetector;
导入com.dextrols.bol_messanger.pushnotifications.JSONParser;
导入com.dextrols.bol_messanger.pushnotifications.R;
导入com.dextrols.bol_messanger.pushnotifications.WakeLocker;
导入com.dextrols.bol_messanger.utils.Database_Handler_编号;
导入com.google.android.gcm.gcmregistar;
公共类Contacts_片段扩展活动实现OnScrollListener{
ProgressDialog;
字符串mPhoto_Uri,mName,mphoneNumber,audio_url_chat=“”;
ArrayListChat_List_Array=new ArrayList();
数据库\u处理程序\u编号mDatabase\u编号;
公共静态字符串Mobile_Number_Db=“”,country_Db=“”,gcm_id_Db=“”;
字符串mDb_编号;
ArrayList mDb_Numbers_Array=新的ArrayList();
JSONParser jParser=新的JSONParser();
String url=“*url\u link\u here*”;
JSONArray products=null,products1=null;;
字符串m_mobile_编号;
ListView lv;
text查看无联系人\文本;
HashMap地图应用程序联系人;
ArrayList m_hash_list=新的ArrayList();
私有静态字符串url_chat_list_single=“*url_here*”;
公共静态字符串ID=“name”;
公共静态字符串NUMBER=“mobile\u NUMBER”;
公共静态字符串IMAGE=“profile\u IMAGE”;
公共静态字符串GCM_ID=“GCM_regid”;
公共静态字符串NAME=“NAME”;
公共静态字符串Audio=“Audio\u url”;
private ArrayList mcontactsu Array=new ArrayList();
private ArrayList mNumbers=新的ArrayList();
public static ArrayList mChat_Array=new ArrayList();
字符串[]网络语音;
私有静态最终字符串TAG=“success”;
字符串audio_url_recive=“”,mContact_Number=“”;
成功;
int size_chat;
字符串计数;
整数位数=10;
//ImageView mAdd_联系人;
字符串[]mContact\u名称;
字符串[]mContact_编号;
字符串[]mContact_图像;
字符串[]mContact\u GcmId;
字符串[]消息计数;
ArrayList mContacts_Names_Array=new ArrayList();
ArrayList mContacts_Numbers_Array=new ArrayList();
ArrayList mContacts_Images_Array=new ArrayList();
public static ArrayList mContacts_Gcmid_Array=new ArrayList();
相对荧光屏;
私人ActionBar ActionBar;
自定义列表适配器;
文本视图mConnection_注释;
字符串mNotification_Number=“”;
AlertDialogManager alert=新建AlertDialogManager();
连接检测器cd;
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_触点);
StrictMode.ThreadPolicy policy=新建StrictMode.ThreadPolicy.Builder()
.permitAll().build();
StrictMode.setThreadPolicy(策略);
actionBar=getActionBar();
//隐藏操作栏标题
actionBar.setDisplayShowTitleEnabled(false);
cd=新连接检测器(getApplicationContext());
actionBar.setBackgroundDrawable(新的ColorDrawable(Color.parseColor(“#ef343e”));
mDatabase\u Number=新数据库\u处理程序\u编号(Contacts\u Fragment.this);
mDatabase_Number.open();
游标getdetails=mDatabase\u Number.get
    package com.dextrols.bol_messanger.fragments;

import static com.dextrols.bol_messanger.pushnotifications.CommonUtilities.DISPLAY_MESSAGE_ACTION;
import static com.dextrols.bol_messanger.pushnotifications.CommonUtilities.EXTRA_MOBILE_NUMBER;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.app.ActionBar;
import android.app.Activity;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.database.Cursor;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.net.ConnectivityManager;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.StrictMode;
import android.provider.Contacts.People;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.provider.ContactsContract.PhoneLookup;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;
import android.widget.AbsListView;
import android.widget.AbsListView.OnScrollListener;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;

import com.dextrols.bol_messanger.fragments.Profile_Settings_Child_Fragment.Load_All;
import com.dextrols.bol_messanger.invite_utils.Invite_Activity;
import com.dextrols.bol_messanger.pushnotifications.AlertDialogManager;
import com.dextrols.bol_messanger.pushnotifications.ConnectionDetector;
import com.dextrols.bol_messanger.pushnotifications.JSONParser;
import com.dextrols.bol_messanger.pushnotifications.R;
import com.dextrols.bol_messanger.pushnotifications.WakeLocker;
import com.dextrols.bol_messanger.utils.Database_Handler_Number;
import com.google.android.gcm.GCMRegistrar;

public class Contacts_Fragment extends Activity implements OnScrollListener {

    ProgressDialog pDialog;

    String mPhoto_Uri,mName,mphoneNumber,audio_url_chat = "";

    ArrayList<String>Chat_List_Array = new ArrayList<String>();

    Database_Handler_Number mDatabase_Number;

    public static String Mobile_Number_Db="",country_db="",gcm_id_db="";

    String mDb_Numbers;

    ArrayList<String> mDb_Numbers_Array = new ArrayList<String>();

    JSONParser jParser = new JSONParser();

    String url = "*url_link_here*";

    JSONArray products = null,products1 = null;;

    String m_mobile_number;

    ListView lv;

    TextView no_contacts_text;

    HashMap<String, String> map_app_contacts;

    ArrayList<HashMap<String, String>> m_hash_list = new ArrayList<HashMap<String,String>>();

    private static String url_chat_list_single = "*url_here*";

    public static String ID = "name";

    public static String NUMBER = "mobile_number";

    public static String IMAGE = "profile_image";

    public static String GCM_ID = "gcm_regid";

    public static String NAME = "name";

    public static String Audio = "audio_url";

    private ArrayList<String> mContacts_Array = new ArrayList<String>();

    private ArrayList<String> mNumbers = new ArrayList<String>();

    public static ArrayList<String> mChat_Array = new ArrayList<String>();

    String [] web_voice;

    private static final String TAG = "success";

    String audio_url_recive="",mContact_Number="";

    int success ;

    int size_chat;

    String count;

    int digits = 10;

    //  ImageView mAdd_Contact; 

    String [] mContact_Names;
    String [] mContact_Numbers;
    String [] mContact_Images;
    String [] mContact_GcmId;
    String [] mMessage_Count;

    ArrayList<String> mContacts_Names_Array = new ArrayList<String>();

    ArrayList<String> mContacts_Numbers_Array = new ArrayList<String>();

    ArrayList<String> mContacts_Images_Array = new ArrayList<String>();

    public static ArrayList<String> mContacts_Gcmid_Array = new ArrayList<String>();

    RelativeLayout screen;

    private ActionBar actionBar;

    CustomListAdapter adapter;

    TextView mConnection_Note;

    String mNotification_Number="";

    AlertDialogManager alert =  new AlertDialogManager();
    ConnectionDetector cd;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_contacts);

        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
        .permitAll().build();

        StrictMode.setThreadPolicy(policy);

        actionBar = getActionBar();

        // Hide the action bar title
        actionBar.setDisplayShowTitleEnabled(false);

        cd = new ConnectionDetector(getApplicationContext());

        actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#ef343e")));

        mDatabase_Number = new Database_Handler_Number(Contacts_Fragment.this);

        mDatabase_Number.open();

        Cursor getdetails=mDatabase_Number.getlistitems();

        if(getdetails.getCount()>0){

            if(getdetails.moveToFirst())

            {
                do{
                    Mobile_Number_Db = getdetails.getString(1);
                    Log.d("Db Mobile Number",""+Mobile_Number_Db);

                    country_db = getdetails.getString(2);
                    Log.d("Db Country",""+country_db);

                    gcm_id_db = getdetails.getString(3);
                    Log.d("Db GCM ID",""+gcm_id_db);

                }while(getdetails.moveToNext());
            }


        }else{

        }

        mDatabase_Number.close();

        mContacts_Array.clear();

        mNumbers.clear();

        mChat_Array.clear();

        getNumber(getApplicationContext().getContentResolver());

        mConnection_Note = (TextView)findViewById(R.id.connection_note);

        Internetchecker();

        if (!cd.isConnectingToInternet()) {

        } else {

            new Load_All_Numbers().execute();
        }

        lv = (ListView)findViewById(R.id.contacts_list);
        screen = (RelativeLayout)findViewById(R.id.contact_screen);


        no_contacts_text = (TextView)findViewById(R.id.no_contact_text);




        registerReceiver(mHandleMessageReceiver, new IntentFilter(DISPLAY_MESSAGE_ACTION));
    }

    /**
     * Receiving push messages
     * */
    private final BroadcastReceiver mHandleMessageReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {

            // Waking up mobile if it is sleeping
            WakeLocker.acquire(Contacts_Fragment.this); 

            mNotification_Number = intent.getExtras().getString(EXTRA_MOBILE_NUMBER);
            mNotification_Number = mNotification_Number.replace("[", "");
            mNotification_Number = mNotification_Number.replace("]", "");
            mNotification_Number = mNotification_Number.replace("\"", "");
            Log.d("Number",""+mNotification_Number);

            String mContact_Save = getContactName(context, mNotification_Number);

            if (mContact_Save != null && !mContact_Save.isEmpty()) {

                mContacts_Array.clear();

                mNumbers.clear();

                mChat_Array.clear();

                Chat_List_Array.clear();

                getNumber(getApplicationContext().getContentResolver());

                new Load_All_Numbers().execute();

            } else {

                final Dialog dialog = new Dialog(Contacts_Fragment.this/*,android.R.style.Theme_Translucent*/);
                dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
                dialog.setCanceledOnTouchOutside(true);
                dialog.setContentView(R.layout.new_contact_save);

                dialog.show();

                final EditText mContact_Name = (EditText)dialog.findViewById(R.id.new_contact_name);
                final TextView mContact_Submit = (TextView)dialog.findViewById(R.id.new_contact_submit);

                mContact_Submit.setOnClickListener(new View.OnClickListener() {

                    @Override
                    public void onClick(View v) {

                        if (mContact_Name.getText().toString().trim().equals("")) {

                            Toast.makeText(getApplicationContext(), "Required fields missing..!", Toast.LENGTH_SHORT).show();



                        } else {

                            dialog.dismiss();

                            createContact(mContact_Name.getText().toString(), mNotification_Number);

                            mContacts_Array.clear();

                            mNumbers.clear();

                            mChat_Array.clear();

                            Chat_List_Array.clear();

                            getNumber(getApplicationContext().getContentResolver());

                            new Load_All_Numbers().execute();
                        }

                    }
                });
            }

            // Releasing wake lock
            WakeLocker.release();
        }
    };

    @Override
    public void onDestroy() {

        try {

            unregisterReceiver(mHandleMessageReceiver);

            GCMRegistrar.onDestroy(getApplicationContext());

        } catch (Exception e) {

            Log.e("UnRegister Receiver Error", "> " + e.getMessage());
        }

        super.onDestroy();
    }




    @Override
    public void onScrollStateChanged(AbsListView view, int scrollState) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onScroll(AbsListView view, int firstVisibleItem,
            int visibleItemCount, int totalItemCount) {
        // TODO Auto-generated method stub

    }

    private void getNumber(ContentResolver cr) {

        Cursor phones = cr.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,null,null,  Phone.DISPLAY_NAME+ " ASC");
        while (phones.moveToNext())
        {
            mName=phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
            System.out.println("................."+mName);


            mphoneNumber = phones.getString(phones.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
            System.out.println(".................."+mphoneNumber);

            mphoneNumber = mphoneNumber.replaceAll("^0+", "");
            Log.i("Zero",""+mphoneNumber);

            mphoneNumber = mphoneNumber.replaceAll(" ", "").replace("(","").replace(")", "").replace("-", "").replace("+91", "");
            Log.d("Replaced Braces",""+mphoneNumber);


            mContacts_Array.add(mphoneNumber);


        }
        phones.close();// close cursor

    }

    class Load_All_Numbers extends AsyncTask<String, String, String> {


        @Override
        protected String doInBackground(String... args) {
            // TODO Auto-generated method stub

            List<NameValuePair> params = new ArrayList<NameValuePair>();
            // getting JSON string from URL
            JSONObject json = jParser.makeHttpRequest(url, "GET", params);


            try {
                // Checking for SUCCESS TAG
                int success = json.getInt("success");

                if (success == 1) {
                    // products found
                    // Getting Array of Products
                    products = json.getJSONArray("data");

                    // looping through All Products
                    for (int i = 0; i < products.length(); i++) {

                        JSONObject c = products.getJSONObject(i);

                        m_mobile_number = c.getString("mobile_number");

                        mNumbers.add(m_mobile_number);

                    }
                } else {

                }
            } catch (JSONException e) {

                e.printStackTrace();
            }

            return null;
        }

        @Override
        protected void onPostExecute(String result) {

            mContacts_Names_Array.clear();

            mContacts_Images_Array.clear();

            mContacts_Gcmid_Array.clear();

            mContacts_Numbers_Array.clear();

            List<String> intersection = new ArrayList(mContacts_Array);
            intersection.retainAll(mNumbers);

            if (intersection.size()>0) {

                new Get_Chat().execute();

                new Get_Each_Contacts().execute();

                no_contacts_text.setVisibility(View.INVISIBLE);

            } else {

                no_contacts_text.setVisibility(View.VISIBLE);

            }


        }

    }

    class Get_Chat extends AsyncTask<String, String, String>{

        @Override
        protected String doInBackground(String... args) {


            List<String> intersection = new ArrayList(mContacts_Array);
            intersection.retainAll(mNumbers);

            for ( String key_chat : intersection){

                List<NameValuePair> params = new ArrayList<NameValuePair>();

                params.add(new BasicNameValuePair("from_number", key_chat));
                params.add(new BasicNameValuePair("to_number", Mobile_Number_Db));

                JSONObject json = jParser.makeHttpRequest(url_chat_list_single, "GET", params);

                try {

                    size_chat = json.getInt("size");

                    count = Integer.toString(size_chat);

                    Chat_List_Array.add(count);

                    Log.d("Size Array",""+Chat_List_Array);



                } catch (JSONException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }


            }
            return null;
        }


    }

    class Get_Each_Contacts extends AsyncTask<String, String, String> {

        @Override
        protected String doInBackground(String... args) {

            try {

                List<String> union = new ArrayList(mContacts_Array);
                union.addAll(mNumbers);

                List<String> intersection = new ArrayList(mContacts_Array);
                intersection.retainAll(mNumbers);

                List<String> symmetricDifference = new ArrayList(union);
                symmetricDifference.removeAll(intersection);    

                for ( String key : intersection){

                    List<NameValuePair> params = new ArrayList<NameValuePair>();

                    params.add(new BasicNameValuePair("mobile_number", key));

                    JSONObject jobj = jParser.makeHttpRequest("http://bolmessenger.com/voice_droid/single_user.php", "GET", params);

                    try {
                        // Checking for SUCCESS TAG
                        int success = jobj.getInt("success");

                        if (success == 1) {
                            // products found
                            // Getting Array of Products
                            products1 = jobj.getJSONArray("single_login");

                            for (int i = 0; i < products1.length(); i++) {

                                JSONObject j = products1.getJSONObject(i);

                                mContacts_Names_Array.add(getContactName(getApplicationContext(), key));

                                mContacts_Numbers_Array.add(j.getString("mobile_number"));

                                mContacts_Images_Array.add(j.getString("profile_image"));

                                mContacts_Gcmid_Array.add(j.getString("gcm_regid"));

                                mContact_Names = new String [mContacts_Names_Array.size()];

                                for (int k = 0; k < mContacts_Names_Array.size(); k++) {

                                    mContact_Names[k] = mContacts_Names_Array.get(k);

                                }

                                mContact_Numbers = new String [mContacts_Numbers_Array.size()];

                                for (int k = 0; k < mContacts_Numbers_Array.size(); k++) {

                                    mContact_Numbers[k] = mContacts_Numbers_Array.get(k);
                                }

                                mContact_Images = new String [mContacts_Images_Array.size()];

                                for (int k = 0; k < mContacts_Images_Array.size(); k++) {

                                    mContact_Images[k] = mContacts_Images_Array.get(k);

                                }


                                mContact_GcmId = new String [mContacts_Gcmid_Array.size()];

                                for (int k = 0; k < mContacts_Gcmid_Array.size(); k++) {

                                    mContact_GcmId[k] = mContacts_Gcmid_Array.get(k);
                                }
                            }
                        } 

                        else {

                        }
                    } catch (JSONException e) {

                        e.printStackTrace();
                    }


                }


            } catch (Exception e){

                e.printStackTrace();
            }


            return null;
        }

        @Override
        protected void onPostExecute(String result) {

            super.onPostExecute(result);

            adapter=new CustomListAdapter(Contacts_Fragment.this, mContact_Names, mContact_Numbers, mContact_Images, mContact_GcmId, Chat_List_Array);

            lv.setAdapter(adapter);

            /*lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                public void onItemClick(AdapterView<?> parent, View view,
                        int position, long id) {

                    Intent single_chat = new Intent(getApplicationContext(),Single_Chat.class);
                    single_chat.putExtra("Mobile_Number", mContact_Numbers[position].toString());
                    startActivity(single_chat);
                    //  Toast.makeText(getActivity(), mContact_Names[position].toString() +"\n"+mContact_Numbers[position].toString(), Toast.LENGTH_SHORT).show();
                }
            });*/

        }


    }

    public String getContactName(Context context, String phoneNumber) {
        ContentResolver cr = context.getContentResolver();
        Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI, Uri.encode(phoneNumber));
        Cursor cursor = cr.query(uri, new String[]{PhoneLookup.DISPLAY_NAME}, null, null, null);
        if (cursor == null) {
            return null;
        }
        String contactName = null;
        if(cursor.moveToFirst()) {
            contactName = cursor.getString(cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME));
        }

        if(cursor != null && !cursor.isClosed()) {
            cursor.close();
        }

        return contactName;
    }


    private void createContact(String name, String phone) {

        ContentValues contact = new ContentValues();

        contact.put(People.NAME, name);

        Uri insertUri = getContentResolver().insert(People.CONTENT_URI, contact);

        Log.d(getClass().getSimpleName(),insertUri.toString());

        Uri phoneUri = Uri.withAppendedPath(insertUri, People.Phones.CONTENT_DIRECTORY);

        contact.clear();

        contact.put(People.Phones.TYPE, People.TYPE_MOBILE);

        contact.put(People.NUMBER, phone);

        Uri updateUri = getContentResolver().insert(phoneUri, contact);

        Toast.makeText(getApplicationContext(), "Created a new contact: " + name + " " + phone, Toast.LENGTH_SHORT).show();

        Log.d(getClass().getSimpleName(),updateUri.toString());
    }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.activity_main, menu);

        /*// Associate searchable configuration with the SearchView
        SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
        SearchView searchView = (SearchView) menu.findItem(R.id.action_search)
                .getActionView();
        searchView.setSearchableInfo(searchManager
                .getSearchableInfo(getComponentName()));*/

        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Take appropriate action for each action item click
        switch (item.getItemId()) {
        case R.id.menu_settings:

            Intent mInvite = new Intent(getApplicationContext(),Invite_Activity.class);
            mInvite.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(mInvite);
            overridePendingTransition(R.anim.push_down_in, R.anim.push_down_out);

            break;

        case R.id.profile_settings:

            Intent mProfile_Settings = new Intent(getApplicationContext(),Profile_Settings_Child_Fragment.class);
            mProfile_Settings.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(mProfile_Settings);
            overridePendingTransition(R.anim.push_down_in, R.anim.push_down_out);

        default:
            return super.onOptionsItemSelected(item);
        }
        return true;

    }

    @Override
    public void onBackPressed() {
        // TODO Auto-generated method stub

        System.exit(0);

        super.onBackPressed();
    }

    private void Internetchecker() {
        // TODO Auto-generated method stub
        ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
        android.net.NetworkInfo wifi = cm
                .getNetworkInfo(ConnectivityManager.TYPE_WIFI);
        android.net.NetworkInfo datac = cm
                .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
        if ((wifi != null & datac != null)
                && (wifi.isConnected() | datac.isConnected())) {
            //connection is avlilable
            //onResume();
            mConnection_Note.setEnabled(false);
            mConnection_Note.setVisibility(View.GONE);



        }else{
            //no connection
            mConnection_Note.setText("No Internet connection");
            mConnection_Note.setVisibility(View.VISIBLE);
            Toast.makeText(getApplicationContext(), "no internet connection", Toast.LENGTH_LONG).show();
        }


    }

    @Override
    protected void onResume() {

        Internetchecker();

        super.onResume();
    }



}