Если нет, как я могу удалить APN?
Если вы знаете, какую запись удалить, используйте ContentResolver.delete()
Здесь URI будет: Uri APN_TABLE_URI = Uri.parse("content://telephony/carriers");
и Where
будет фильтромприменить к строкам перед удалением, отформатированный как предложение SQL WHERE (исключая сам WHERE).
Есть ли способ вызвать функцию «Сброс по умолчанию»?
Чтобы восстановить настройки по умолчанию, вам необходимо создать резервную копию идентификатора APN по умолчанию.Если вы сделаете резервную копию, вы можете позвонить SetDefaultAPN()
, чтобы восстановить ее.
Попробуйте, хотя, я видел это в TelephonyProvider.java .Это кажется рискованным, поэтому я предлагаю вам сделать резервную копию вашего APN
private void restoreDefaultAPN() {
SQLiteDatabase db = mOpenHelper.getWritableDatabase();
db.delete(CARRIERS_TABLE, null, null);
setPreferredApnId((long)-1);
((DatabaseHelper) mOpenHelper).initDatabase(db);
}