ensureAndroidBillingVersionMetadata function
void
ensureAndroidBillingVersionMetadata(
- XmlElement application
Android の課金ライブラリのバージョンを Manifest に反映します。
Implementation
void ensureAndroidBillingVersionMetadata(XmlElement application) {
XmlElement? billingVersionMetadata;
for (final child in application.children.whereType<XmlElement>()) {
if (child.name.toString() == "meta-data" &&
child.getAttribute("android:name") ==
"com.google.android.play.billingclient.version") {
billingVersionMetadata = child;
break;
}
}
if (billingVersionMetadata == null) {
application.children.add(
XmlElement(
XmlName("meta-data"),
[
XmlAttribute(
XmlName("android:name"),
"com.google.android.play.billingclient.version",
),
XmlAttribute(
XmlName("android:value"),
Config.androidBillingVersion,
),
XmlAttribute(
XmlName("tools:replace"),
"android:value",
),
],
[],
),
);
} else {
billingVersionMetadata.setAttribute(
"android:value",
Config.androidBillingVersion,
);
billingVersionMetadata.setAttribute("tools:replace", "android:value");
}
}