mNeo, to answer your question:
newFetchPersonRequest('VIEWER') now returns a non-null object, even though the viewer is not an installed user. This didn't happen this morning.
To determine that the returned object is for an installed user, I now have to test the object that is returned by the 'get' method:
var objTemp = objData.get('viewerdata');
if (objTemp !=null) {
Play with the Weather app, and this will make more sense. The app only "permanently" remembers the Zip Code for the owner.
------------------------------------------------------------
mNeo: Could you please confirm that Jeremy's example also fails when you try to use it? When I click [Update Data] on his app, it displays "Error updating data."