public override void UpdateProps()

in Facebook.Unity.Editor/iOS/PBX/Objects.cs [930:1002]


        public override void UpdateProps()
        {
            m_Properties.values.Remove("projectReferences");
            if (projectReferences.Count > 0)
            {
                var array = m_Properties.CreateArray("projectReferences");
                foreach (var value in projectReferences)
                {
                    var dict = array.AddDict();
                    dict.SetString("ProductGroup", value.group);
                    dict.SetString("ProjectRef", value.projectRef);
                }
            };
            SetPropertyList("targets", targets);
            SetPropertyString("buildConfigurationList", buildConfigList);
            if (knownAssetTags.Count > 0)
            {
                PBXElementDict attrs;
                if (m_Properties.Contains("attributes"))
                    attrs = m_Properties["attributes"].AsDict();
                else
                    attrs = m_Properties.CreateDict("attributes");
                var tags = attrs.CreateArray("knownAssetTags");
                foreach (var tag in knownAssetTags)
                    tags.AddString(tag);
            }

            // Enable the capabilities.
            foreach (var cap in capabilities)
            {
               var attrs =
                m_Properties.Contains("attributes")
                ? m_Properties["attributes"].AsDict()
                : m_Properties.CreateDict("attributes");
               var targAttr =
                attrs.Contains("TargetAttributes")
                ? attrs["TargetAttributes"].AsDict()
                : attrs.CreateDict("TargetAttributes");
               var target =
                targAttr.Contains(cap.targetGuid)
                ? targAttr[cap.targetGuid].AsDict()
                : targAttr.CreateDict(cap.targetGuid);
               var sysCap =
                target.Contains("SystemCapabilities")
                ? target["SystemCapabilities"].AsDict()
                : target.CreateDict("SystemCapabilities");

               var capabilityId = cap.capability.id;
               var currentCapability =
                sysCap.Contains(capabilityId)
                ? sysCap[capabilityId].AsDict()
                : sysCap.CreateDict(capabilityId);
               currentCapability.SetString("enabled", "1");
            }

            // Set the team id
            foreach (KeyValuePair<string, string> teamID in teamIDs)
            {
               var attrs =
                m_Properties.Contains("attributes")
                ? m_Properties["attributes"].AsDict()
                : m_Properties.CreateDict("attributes");
               var targAttr =
                attrs.Contains("TargetAttributes")
                ? attrs["TargetAttributes"].AsDict()
                : attrs.CreateDict("TargetAttributes");
               var target =
                targAttr.Contains(teamID.Key)
                ? targAttr[teamID.Key].AsDict()
                : targAttr.CreateDict(teamID.Key);
               target.SetString("DevelopmentTeam", teamID.Value);
            }
        }