[Android Q&A, Help & Troubleshooting] LG4XHDnewbie:
I spent most of a day trying to get an APN definition for MMS working on my new (and first) smartphone. Searching for answers, I found a lot of conflicting information regarding the meaning and specification of "APN type." I finally decided to go to the source (code) to understand. Here's what I found for Android 4.1.1 (sorry if this is duplicative, but nowhere could I find an exhaustive list):

from /android/4.1.1/frameworks/base/telephony/java/com/android/internal/telephony/Phone.java, /android/4.1.1/frameworks/base/telephony/java/com/android/internal/telephony/DataConnectionTracker.java, and /android/4.1.1/frameworks/base/core/java/android/net/ConnectivityManager.java

default	any type for which no APN entry is defined

mms Multimedia Messaging Service

supl Secure User Plane Location, geographic device location

dun Dial Up Networking bridge

hipri High Priority Mobile data

ims IP Multimedia Subsystem

fota Over the air Adminstration

cbs Carrier Branded Services

* all types of traffic (literal asterisk string)

"APN type" may be specified by including one or more of the above strings in a comma-separated list (apparently only lower-case, no spaces). In my case (Italy Coop-Voce branded service apparently carried by TIM), specifying a GPRS APN with APN type "default" and a second APN definition with APN type "mms" was sufficient to provide working Internet, SMS, and MMS access. After saving the MMS APN definition, I saw that it showed no radio-button for selection. I thought that meant the definition was faulty, but not so; it works just fine for MMS nonetheless (apparently the radio button selects only the primary data APN).

from /android/4.1.1/frameworks/base/core/java/android/net/ConnectivityManager.java

MMS	An MMS-specific Mobile data connection. This connection may be the same as TYPE_MOBILE but it may be different. This is used by applications needing to talk to the carrier's Multimedia Messaging Service servers. It may coexist with default data connections.

SUPL	A SUPL-specific Mobile data connection. This connection may be the same as TYPE_MOBILE but it may be different. This is used by applications needing to talk to the carrier's Secure User Plane Location servers for help locating the device. It may coexist with default data connections.

DUN	A DUN-specific Mobile data connection. This connection may be thesame as TYPE_MOBILE but it may be different. This is used by applicaitons performing a Dial Up Networking bridge so that the carrier is aware of DUN traffic. It may coexist with default data connections.

HIPRI	A High Priority Mobile data connection. This connection is typically the same as TYPE_MOBILE but the routing setup is different. Only requesting processes will have access to the Mobile DNS servers and only IP's explicitly requested via requestRouteToHost will route over this interface if a default route exists.

IMS	IP Multimedia Subsystem

FOTA	Over the air Adminstration.

CBS	Carrier Branded Services

Note: directory structure and module content vary with Android version. Some earlier versions do not define all above APN types; otherwise, type strings and meanings appear to be consistent across versions.