ultimatepp/uppsrc/ide/Android/AndroidManifest.cpp
2023-02-01 15:27:24 +01:00

50 lines
948 B
C++

#include "Android.h"
#define METHOD_NAME "AndroidManifest::" << UPP_FUNCTION_NAME << "(): "
namespace Upp {
AndroidManifest::AndroidManifest(const String& path)
: path(path)
{
}
AndroidManifest::~AndroidManifest()
{
}
bool AndroidManifest::Parse()
{
String xml = LoadFile(path);
if (xml.IsVoid()) {
Loge() << METHOD_NAME << "Failed to load manifest file \"" + path + "\".";
return false;
}
try {
XmlParser p(xml);
while(!p.IsTag()) {
p.Skip();
}
p.PassTag("manifest");
while (!p.End()) {
if(p.TagE("uses-sdk")) {
uses_sdk.Create();
uses_sdk->minSdkVersion = p.Int("android:minSdkVersion");
uses_sdk->targetSdkVersion = p.Int("android:targetSdkVersion");
uses_sdk->maxSdkVersion = p.Int("android:maxSdkVersion");
}
p.Skip();
}
}
catch(const XmlError& e) {
Loge() << METHOD_NAME << "Failed to parse manifest file with error \"" + e + "\".";
return false;
}
return true;
}
}