- Notifications
You must be signed in to change notification settings - Fork367
Description
Feature proposal
- EDM4U Component: Android Resolver, iOS Resolver
Since this package is very widely used for everyone developing in android and ios.Dependencies.xml mechanic is very amazing. So I think it would be more beneficial if this package also have mechanism to do patching toInfo.plist andAndroidManifest.xml also variousres/values/ xml files
Specifically things that related to adding and verifying key/value, query if the key and value already existed. Handling of android namespace (usingSystem.Xml directly is very difficult at this). And generating required values of 3rd party packages for android and ios, which always required for package like google signin and firebase
It wouldn't need to be xml declarative pattern, I wish we would just have some C# editor API we can use to write our ownIPostprocessBuildWithReport
Such as
usingEDM4U.Helper.Android;//// IPostGenerateGradleAndroidProject.OnPostGenerateGradleAndroidProjectvarxmlElement=AndroidManifestHelper.GetOrCreateMetaDataWithAndroidName("com.google.android.gms.games.APP_ID");// get meta-data in manifest/application that has attribute android:name=com.google.android.gms.games.APP_IDxmlElement.SetAndroidValue(appId);// Extension method to set android:value=XXXXXXXX
usingEDM4U.Helper.iOS;//// IPostprocessBuildWithReport.OnPostprocessBuildvarinfo=newPlistDocument();info.ReadFromFile(plistPath);varplistArrayCFBUT=info.root.GetOrCreateArray("CFBundleURLTypes");// extension method in PListHelperif(!plistArrayCFBUT.values.Any(/* any dict with CFBundleURLTypes contain reversedClientID */)){vardict=plistArrayCFBUT.AddDict();dict.SetString("CFBundleTypeRole","Editor");dict.GetOrCreateArray("CFBundleURLSchemes").AddString(reversedClientID);}
Actually I have seen similar feature exist in firebase core. I think it would be better if it was moved into this repo so that it can be utilized by almost all of google dependent package