[Sprint Samsung Galaxy S III] crinoid:
Vzw GS3 on Android 4.3 message waiting indicator: what I learned

On the off chance that someone else is as freakishly obsessed with the message-waiting indicator as I am, I wanted to share what I figured out after I flashed my Vzw GS3 with no sim running Android 4.3 to PP. As noted upthread, once I installed an unactivated T-Mo sim, my message-waiting problems were fixed (I have not tried to set up data yet, I'm just using voice and SMS at the moment).

Android 4.3 on Verizon Samsung Galaxy S3

Observations regarding the phone's interaction with carrier-provided
voicemail (in my case, phone is flashed to PagePlus, a Verizon MVNO,
so Verizon provides the phone service, including voicemail):

1. The voicemail message-waiting indicator (MWI), in the form of the
"tape" symbol (looks like an upside-down pair of glasses) on the
status bar, the LED when the screen is blanked, and the voicemail
notification text in the "notification" screen, is mediated through
the SIM memory. If no SIM is present, then the phone appears to
determine the correct VM state at boot time but never updates it.

2. This behavior is also manifest in the Android API
PhoneStateListener.onMessageWaitingIndicatorChanged(boolean mwi). When
there is no SIM, the callback is invoked once when initialized, and
the mwi parameter is set to whatever value the phone determined at
boot time. The callback seems never to be called again if there is
no SIM.

3. The MWI on the phone is managed by the system "Phone" app (the one
that brings up the dialpad). It is possible to manually clear the
MWI icon in the status bar by tapping "Clear Data" in the Phone
app's menu in the application manager
(Settings>Device>Application Manager>All>Phone>Storage>Clear Data).

The Phone app appears to use the same API
PhoneStateListener.onMessageWaitingIndicatorChanged() indicated
above.

4. The "Voicemail Notification Apk for Flashed Phones" listed in post #2
of Viper's (this) thread manages its own "tape" symbol MWI icon in
the status bar. Thus it is possbile to have multiple MWI icons in the
status bar at the same time, managed by different apps.

This app also appears to use
PhoneStateListener.onMessageWaitingIndicatorChanged() to obtain
MWI status updates. Thus, it suffers from the same problem as
the system Phone app when there is no SIM.

5. Verizon's Visual Voicemail app is called, simply, "Voicemail" and
has a red icon with a "tape" symbol. On my phone running Android
4.3, the VVM app has version 2.3.00.

This app has a numeric "badge" showing the number of unread
voicemails. Even if there is no SIM, this app is updated within
about 30 seconds after I add or delete voicemails. I believe
it must use some (maybe Samsung proprietary?) API to receive
updates about voicemail status.

7. On CDMA networks, the provider sends a special SMS message to the
phone whenever the number of (unread) voicemails changes. This
message includes the number of unread voicemails.

8. The android source file CdmaSMSDispatcher.java contains code that
deals with this message. In the public android 4.3 code I looked
at, this message (sent to TELESERVICE_VMN or TELESERVICE_MWI) is
consumed by the android code and is NOT passed to apps that might
be listening to incoming SMS messages (via, for example, the intents
android.provider.Telephony.SMS_RECEIVED or
android.intent.action.DATA_SMS_RECEIVED).

In the public code, when this special SMS is parsed, the voicemail
count is sent to two places:

a. Into something called Default Shared Preferences with a key
called CDMAPhone.VM_COUNT_CDMA (I speculate that this is a
mechanism for storing the count for when the phone reboots
or loses SMS connectivity)

b. A call to mPhone.setVoiceMessageWaiting() (I think this
triggers the onMessageWaitingIndicatorChanged() API callbacks,
but it doesn't propagate if there is no SIM. I don't know if
the SIM dependency is in the public code or if it resulted
from Samsung-specific changes, since I don't have access to
Samsung's code.)

---------- Post added at 11:15 PM ---------- Previous post was at 11:04 PM ----------

Now I'm going to try to get data working on my vzw GS3 flashed to PP. If it wouldn't be too much trouble, I'd be delighted if someone could generate AAA/HA keys for me. I believe the only input data to the process is my MEID? Many thanks.

--- added 1 Mar 22:00 ---

Thanks to a kind soul in this forum, I now have keys. Much appreciated!