Add APN API
Last updated
Last updated
The system provides the AIDL interface to set the APN. The package name is com.wizarpos.wizarviewagentassistant, and the class name is com.wizarpos.wizarviewagentassistant.APNManagerService. When the application uses the interface, it must import the package and add permissions to the Android manifest file.
Please note that:
Insert SIM card first
The MCC, MNC should be the same as SIM card inserted
The application declares the following permissions in the manifest:
com.wizarpos.permission.WRITE_APN_SETTINGS
String addByAllArgs(String name, String apn, String mcc, String mnc, String proxy, String port, String MMSProxy, String MMSPort, String userName
Add an APN setting. All paramers can not be set to Null.
name
the name of the APN setting. It can not be null or "".
apn
the apn of the APN setting. It can not be null or "".
mcc
the mcc of the APN setting. It can not be null or "".
mnc
the mnc of the APN setting. It can not be null or "".
proxy
the proxy of the APN setting. It can not be null, but can be "".
port
the port of the APN setting. It can not be null, but can be "".
MMSProxy
the MMSProxy of the APN setting. It can not be null, but can be "".
MMSPort
String
a string representation of the result.
"succeed" if success.
"error description" if failure.
String add(String name, String apn);
name
the name of the APN setting. It can not be null or "".
apn
the apn of the APN setting. It can not be null or "".
String
a string representation of the result.
"succeed" if success.
"error description" if failure.
String addByMCCAndMNC(String name, String apn, String mcc, String mnc);
Add an APN setting.
name
the name of the APN setting. It can not be null or "".
apn
the apn of the APN setting. It can not be null or "".
mcc
the mcc of the APN setting. It can not be null or "".
mnc
the mnc of the APN setting. It can not be null or "".
String
a string representation of the result.
"succeed" if success.
"error description" if failure.
boolean setSelected(String name);
Set default APN.
name
the name of the APN setting. It can not be null or "".
boolean
a boolean representation of the result.
true if success. false if failure.
Map getSelected();
Get detail information of the selected APN.
Map
a map representation of the result. Detail information map of the selected APN.
Snippet code:
HashMap res = (HashMap)mAPNManagerService.getSelected();
StringBuilder sb = new StringBuilder();
if (res != null) {
sb.append(Telephony.Carriers.NAME + ": ").append(res.get(Telephony.Carriers.NAME) + "\n")
.append(Telephony.Carriers.APN + ": ").append(res.get(Telephony.Carriers.APN) + "\n")
.append(Telephony.Carriers.PROXY + ": ").append(res.get(Telephony.Carriers.PROXY) + "\n")
.append(Telephony.Carriers.PORT + ": ").append(res.get(Telephony.Carriers.PORT) + "\n")
.append(Telephony.Carriers.MMSPROXY + ": ").append(res.get(Telephony.Carriers.MMSPROXY) + "\n")
.append(Telephony.Carriers.MMSPORT + ": ").append(res.get(Telephony.Carriers.MMSPORT) + "\n")
.append(Telephony.Carriers.USER + ": ").append(res.get(Telephony.Carriers.USER) + "\n")
.append(Telephony.Carriers.SERVER + ": ").append(res.get(Telephony.Carriers.SERVER) + "\n")
.append(Telephony.Carriers.MMSC + ": ").append(res.get(Telephony.Carriers.MMSC) + "\n")
.append(Telephony.Carriers.AUTH_TYPE + ": ").append(res.get(Telephony.Carriers.AUTH_TYPE) + "\n")
.append(Telephony.Carriers.PROTOCOL + ": ").append(String.valueOf(res.get(Telephony.Carriers.PROTOCOL)) + "\n")
.append(Telephony.Carriers.ROAMING_PROTOCOL + ": ").append(String.valueOf(res.get(Telephony.Carriers.ROAMING_PROTOCOL)) + "\n")
.append(Telephony.Carriers.TYPE + ": ").append(res.get(Telephony.Carriers.TYPE) + "\n")
.append(Telephony.Carriers.MCC + ": ").append(res.get(Telephony.Carriers.MCC) + "\n")
.append(Telephony.Carriers.MNC + ": ").append(res.get(Telephony.Carriers.MNC) + "\n")
.append(Telephony.Carriers.BEARER + ": ").append(res.get(Telephony.Carriers.BEARER) + "\n")
.append("mvno_type: ").append(String.valueOf(res.get("mvno_type")).toUpperCase() + "\n")
.append("mvno_match_data: ").append(res.get("mvno_match_data"));
}
boolean clear();
Clear all APN settings.
boolean
a boolean representation of the result.
true if success. false if failure.
Please download the AddAPN demo
the MMSPort of the APN setting. It can not be null, but can be "".
userName
the userName of the APN setting. It can not be null, but can be "".
server
the server of the APN setting. It can not be null, but can be "".
password
the password of the APN setting. It can not be null, but can be "".
MMSC
the MMSC of the APN setting. It can not be null, but can be "".
authType
the authType of the APN setting. It can not be null or "", but can be "-1", PAP, CHAP, PAP/CHAP.
protocol
the protocol of the APN setting. It can not be null or "", but can be IP, IPV4, IPV6, IPV4/IPV6.
roamingProtocol
the roamingProtocol of the APN setting. It can not be null or "", but can be IP, IPV4, IPV6, IPV4/IPV6.
type
the type of the APN setting. It can not be null, but can be "".
bearer
the bearer of the APN setting. It can not be null or "", but can be "0", LTE, eHRPD.
MVNOType
the MVNOType of the APN setting. It can not be null, but can be "", SPN, IMSI, GID.
MVNOMatchData
the MVNOMatchData of the APN setting. It can not be null, but can be "".