Question

I'm trying to get Access Point Name programmatically.I need this to develop application for the specific APN name.I googled lot but didn't find any proper way can any tell me how to do this.Thanks

Was it helpful?

Solution

For Selected APN:

Cursor c = context.getContentResolver().query(Uri.parse("content://telephony/carriers/preferapn"), null, null, null, null);

For All APN Names:

Cursor c = context.getContentResolver().query(Uri.parse("content://telephony/carriers/current"), null, null, null, null);

OTHER TIPS

For All APN Names:

Cursor c = getApplicationContext().getContentResolver().query(Uri.parse("content://telephony/carriers/current"),null, null, null, null);
        Log.e("MainActivity","getColumnNames: "+ 
                        Arrays.toString(c.getColumnNames())); //get the column names from here.
        if (c.moveToFirst()){
            do{
                String data = c.getString(c.getColumnIndex("name")); //one of the column name to get the APN names.
                Log.e("MainActivity","data: "+ data);

            }while(c.moveToNext());
        }
        c.close();         

For Selected APN:

Cursor c1 = getApplicationContext().getContentResolver().query(Uri.parse("content://telephony/carriers/preferapn"),null, null, null, null);
    if (c1.moveToFirst()){
        do{
            String data = c1.getString(c1.getColumnIndex("name"));
            Log.e("MainActivity","data: "+ data);
        }while(c1.moveToNext());
    }
    c1.close();    
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top