1. Any way for web map to treat my shapefile as a Feature Layer?
The shape file added to the web map is being treated as feature collection (ultimately, it is a feature layer but in this case all features resided in the web map and not in the server like a feature layer from a feature server).
2. Is it necessary for web map to be based on a Feature Layer from a Feature Server for AGSPopupInfo and AGSPopupFieldInfo to be configured properly?
No, you can configure popupInfo for the layer based on a shape file (feature collection). You are not able to find the popup info because you are looking at a wrong place. Just change your code like below and you'll see what you want to 
Code:
for (AGSWebMapLayerInfo *li in webMap.operationalLayers)
{
NSLog(@"title %@; layerId %@; layerType %@; mode %d; layers count %d", li.title, li.layerId, li.layerType, li.mode, [li.layers count]);
if(li.featureCollection) {
AGSWebMapFeatureCollection *wmfc = li.featureCollection;
for (AGSWebMapLayerInfo *fcli in wmfc.layers)
{
AGSPopupInfo *pi = fcli.popupInfo;
NSLog(@"title %@; description %@; allowEdit %@", pi.title, pi.description, pi.allowEdit);
for (AGSPopupFieldInfo *fi in pi.fieldInfos)
{
NSLog(@"fieldName %@", fi.fieldName);
}
}
}
}
Regards,
Nimesh
Bookmarks