[Android Q&A, Help & Troubleshooting] Dopamin3:
I have Sprint Note 2 that I got resku'd to Boost Mobile (not a hack or anything, they accept it as BYOD now) On all the Marshmallow and Lollipop ROMs I've tried (mostly CM12.1 snapshot, CM13 nightly, Mokee 6.0.1 Release) I can't get data to work. I know this is an issue with the APN settings. Using APN Backup and Restore on stock rooted I was able to backup the APNs to an XML file, but I have trouble getting them to work on any of these ROMs. Kitkat based ROMs whether CM or TW work fine for editing the APN. But Marshmallow/Lollipop it doesn't work.

When I try to go to APN settings I get the infamous "access point name settings are not available for this user". I've tried everything, moving the apns-conf.xml file to the etc folder on the ROM, and deleting the data/data/com.android.providers.telephony/databases/telephony.db. file to force it's recreation. I've also copied over the whole data/data/com.android.providers.telephony folder over from a working CM11 ROM but it just causes constant crashing.

Here are the APN's that I need to be added so I get data working and what not. How do I go about adding them? I'm really wracking my brain over this.

<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<apns count="24">
<apn name="LTE - Wholesales OTA" numeric="310000" mcc="310" mnc="000" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="LTE - Boost OTA" numeric="311870" mcc="311" mnc="870" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="LTE - Virgin OTA" numeric="311490" mcc="311" mnc="490" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="LTE - SPRINT test ISP" numeric="00101" mcc="001" mnc="01" apn="n.ispsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
<apn name="LTE - SPRINT test OTA" numeric="00101" mcc="001" mnc="01" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="LTE - SPRINT test PAM" numeric="00101" mcc="001" mnc="01" apn="pamsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="dun" />
<apn name="LTE - SPRINT test ISP" numeric="001010" mcc="001" mnc="010" apn="n.ispsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
<apn name="LTE - SPRINT test OTA" numeric="001010" mcc="001" mnc="010" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="LTE - SPRINT test PAM" numeric="001010" mcc="001" mnc="010" apn="pamsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="dun" />
<apn name="EHRPD - Wholesals OTA" numeric="310000" mcc="310" mnc="000" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="EHRPD - Boost OTA" numeric="311870" mcc="311" mnc="870" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="EHRPD - Virgin OTA" numeric="311490" mcc="311" mnc="490" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="EHRPD - SPRINT test ISP" numeric="00101" mcc="001" mnc="01" apn="n.ispsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
<apn name="EHRPD - SPRINT test OTA" numeric="00101" mcc="001" mnc="01" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="EHRPD - SPRINT test PAM" numeric="00101" mcc="001" mnc="01" apn="pamsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="dun" />
<apn name="EHRPD - SPRINT test ISP" numeric="001010" mcc="001" mnc="010" apn="n.ispsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
<apn name="EHRPD - SPRINT test OTA" numeric="001010" mcc="001" mnc="010" apn="otasn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="fota" />
<apn name="EHRPD - SPRINT test PAM" numeric="001010" mcc="001" mnc="010" apn="pamsn" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="null" mmsport="null" mmsprotocol="null" mmsc="null" type="dun" />
<apn name="Global Roaming - SPRINT" numeric="310120" mcc="310" mnc="120" apn="cinet.spcs" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,supl,mms,dun,fota" />
<apn name="Global Roaming - WholeSales" numeric="310000" mcc="310" mnc="000" apn="cinet.spcs" user="null" server="null" password="null" proxy="null" port="null" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.plspictures.com" type="default,supl,mms,dun,fota" />
<apn name="APN0 LTE ota" numeric="310120" mcc="310" mnc="120" apn="otasn" user="" server="" password="" proxy="" port="" mmsproxy="" mmsport="" mmsprotocol="null" mmsc="" type="fota" />
<apn name="APN0 EHRPD ota" numeric="310120" mcc="310" mnc="120" apn="otasn" user="" server="" password="" proxy="" port="" mmsproxy="" mmsport="" mmsprotocol="null" mmsc="" type="fota" />
<apn name="APN2 LTE internet" numeric="310120" mcc="310" mnc="120" apn="n.boost.ispsn" user="" server="" password="" proxy="" port="" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
<apn name="APN2 EHRPD internet" numeric="310120" mcc="310" mnc="120" apn="n.boost.ispsn" user="" server="" password="" proxy="" port="" mmsproxy="68.28.31.7" mmsport="80" mmsprotocol="null" mmsc="http://mms.sprintpcs.com" type="default,mms" />
</apns>

This above is actually the xml file for the APNs I need. If restoring them doesn't work right, what about making a flashable zip file? I don't know how to do that but I would assume this file would need to be "apns-conf.xml" and put in the etc/ folder. Not sure how that effects the com.android.providers.telephony folder though and if any changes would need made to that?