]> git.tdb.fi Git - builder.git/blobdiff - source/androidapplicationcomponent.cpp
Allow Android application permissions to be set in Build file
[builder.git] / source / androidapplicationcomponent.cpp
index 3c07feaad35d88db4358074435893ea727086ee7..85873d4024ab46b14f51c6e05196354eb7fed4ff 100644 (file)
@@ -29,6 +29,8 @@ void AndroidApplicationComponent::create_targets() const
                                contents.push_back(inst->get_real_target());
 
        AndroidManifestFile *manifest = new AndroidManifestFile(builder, *this);
+       for(set<string>::const_iterator i=permissions.begin(); i!=permissions.end(); ++i)
+               manifest->add_permission(*i);
 
        list<Target *> resource_sources;
        resource_sources.push_back(manifest);
@@ -77,3 +79,15 @@ void AndroidApplicationComponent::create_targets() const
        Target *apk = apk_builder.create_target(apk_sources);
        builder.get_build_graph().add_primary_target(*apk);
 }
+
+
+AndroidApplicationComponent::Loader::Loader(AndroidApplicationComponent &c):
+       DataFile::DerivedObjectLoader<AndroidApplicationComponent, Component::Loader>(c)
+{
+       add("permission", &Loader::permission);
+}
+
+void AndroidApplicationComponent::Loader::permission(const string &perm)
+{
+       obj.permissions.insert(perm);
+}