예제 #1
0
 public bool isManifestReady(Manifest manifest)
 {
     if (!status) return true;
     for (int i = 0; i < ManifestSource.Activity.Count; i++)
     {
         if (!manifest.hasActivity(ManifestSource.Activity[i].name)) return false;
         else
         {
             List<ManifestMetaData> metas = ManifestSource.Activity[i].meta_data;
             for (int j = 0; j < metas.Count; j++)
             {
                 if (metas[j].value == "NOT SET") return false;
                 if (!manifest.getActivity(ManifestSource.Activity[i].name).hasMetaData(metas[j].name)) return false;
                 if (manifest.getActivityMetaData(ManifestSource.Activity[i].name, metas[j].name).value
                     != metas[j].value) return false;
             }
         }
     }
     for (int i = 0; i < ManifestSource.Permission.Count; i++)
         if (!manifest.hasPermission(ManifestSource.Permission[i].name)) return false;
     for (int i = 0; i < MetaData.Count; i++) if (MetaData[i].value == "NOT SET") return false;
     for (int i = 0; i < MetaData.Count; i++)
     {
         if (!manifest.hasMetaData(MetaData[i].name)) return false;
         else if (manifest.getApplicationMetaData(MetaData[i].name).value != MetaData[i].value) return false;
     }
     return true;
 }