在我的Android应用程序中,我想获得所有可用的APN并检查客户端APN是否可用.我想使用此客户端APN运行我的应用程序.
有没有办法在Android上实现这一目标?
这可能无法直接回答您的问题.看看这个.但请记住,此代码仅供参考,不应在您的应用中使用.
要获得定义的APN:
Cursor c = getContentResolver().query(Uri.withAppendedPath(Telephony.Carriers.CONTENT_URI, "current"), null, null, null, null);
Run Code Online (Sandbox Code Playgroud)
然后参考Telephony.Carriers相关专栏.
如果您想阅读适用于 Android 4.2 及更高版本的 APN,则需要进行更改。我测试了它,它有效。
在 Android 4.1 及更高版本中使用这个:
Cursor c = getContentResolver().query(Uri.withAppendedPath(Telephony.Carriers.CONTENT_URI, "current"), null, null, null, null);
Run Code Online (Sandbox Code Playgroud)
对于 Android 4.2 及更高版本,请使用以下代码:
private static final String[] APN_PROJECTION = {
Telephony.Carriers.TYPE, // 0
Telephony.Carriers.MMSC, // 1
Telephony.Carriers.MMSPROXY, // 2
Telephony.Carriers.MMSPORT // 3
};
Run Code Online (Sandbox Code Playgroud)
而这一行:
final Cursor apnCursor =SqliteWrapper.query(context, this.context.getContentResolver(), Uri.withAppendedPath(Carriers.CONTENT_URI, "current"), APN_PROJECTION, null, null, null);
Run Code Online (Sandbox Code Playgroud)
SQLiteWrapperClass 是隐藏的(我在 Internet 上找到了这个类)。
import android.database.sqlite.SqliteWrapper;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19813 次 |
| 最近记录: |