nitc :: AndroidProject :: _activities
Activities to declare in the manifestnitc :: AndroidProject :: _manifest_activity_attributes
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: _manifest_application_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: _manifest_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: _max_api
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: _min_api
Minimum API level required for the application to runnitc :: AndroidProject :: activities
Activities to declare in the manifestnitc :: AndroidProject :: activities=
Activities to declare in the manifestnitc :: AndroidProject :: defaultinit
nitc :: AndroidProject :: manifest_activity_attributes
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: manifest_activity_attributes=
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: manifest_application_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_application_lines=
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_lines=
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: max_api
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: max_api=
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: min_api
Minimum API level required for the application to runnitc :: AndroidProject :: min_api=
Minimum API level required for the application to runnitc :: AndroidProject :: target_api=
Build target API levelnitc $ AndroidProject :: SELF
Type of this instance, automatically specialized in every classnitc $ AndroidProject :: init
nitc :: AndroidProject :: _activities
Activities to declare in the manifestnitc :: AppProject :: _mainmodule
nitc :: AndroidProject :: _manifest_activity_attributes
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: _manifest_application_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: _manifest_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: _max_api
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: _min_api
Minimum API level required for the application to runnitc :: AppProject :: _modelbuilder
nitc :: AppProject :: _namespace
Namespace/package used to identify the applicationnitc :: AppProject :: _short_name
Short project name used innamespace
and configuration files
nitc :: AppProject :: _version_code
Numerical version code of the applicationnitc :: AndroidProject :: activities
Activities to declare in the manifestnitc :: AndroidProject :: activities=
Activities to declare in the manifestcore :: Object :: class_factory
Implementation used byget_class
to create the specific class.
nitc :: AndroidProject :: defaultinit
nitc :: AppProject :: defaultinit
core :: Object :: defaultinit
core :: Object :: is_same_instance
Return true ifself
and other
are the same instance (i.e. same identity).
core :: Object :: is_same_serialized
Isself
the same as other
in a serialization context?
core :: Object :: is_same_type
Return true ifself
and other
have the same dynamic type.
nitc :: AppProject :: mainmodule
nitc :: AppProject :: mainmodule=
nitc :: AndroidProject :: manifest_activity_attributes
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: manifest_activity_attributes=
Custom lines to add to AndroidManifest.xml as attributes inside thenitc :: AndroidProject :: manifest_application_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_application_lines=
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_lines
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: manifest_lines=
Custom lines to add to the AndroidManifest.xml in thenitc :: AndroidProject :: max_api
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: max_api=
Maximum API level on which the application will be allowed to runnitc :: AndroidProject :: min_api
Minimum API level required for the application to runnitc :: AndroidProject :: min_api=
Minimum API level required for the application to runnitc :: AppProject :: modelbuilder
nitc :: AppProject :: modelbuilder=
nitc :: AppProject :: name=
Pretty name of the resulting applicationnitc :: AppProject :: namespace
Namespace/package used to identify the applicationnitc :: AppProject :: namespace=
Namespace/package used to identify the applicationcore :: Object :: native_class_name
The class name of the object in CString format.core :: Object :: output_class_name
Display class name on stdout (debug only).nitc :: AppProject :: short_name
Short project name used innamespace
and configuration files
nitc :: AppProject :: short_name=
Short project name used innamespace
and configuration files
nitc :: AndroidProject :: target_api=
Build target API levelnitc :: AppProject :: version_code=
Numerical version code of the application
# Metadata associated to an Android project
class AndroidProject
super AppProject
# Custom lines to add to the AndroidManifest.xml in the <manifest> node
var manifest_lines = new Array[String]
# Custom lines to add to the AndroidManifest.xml in the <application> node
var manifest_application_lines = new Array[String]
# Custom lines to add to AndroidManifest.xml as attributes inside the <activity> node
var manifest_activity_attributes = new Array[String]
# Minimum API level required for the application to run
var min_api: nullable Int = null
# Build target API level
var target_api: nullable Int = null
# Maximum API level on which the application will be allowed to run
var max_api: nullable Int = null
# Activities to declare in the manifest
var activities = new Array[String]
init
do
var annots = modelbuilder.collect_annotations_on_modules("android_api_min", mainmodule)
if not annots.is_empty then
var i = annots.pop.arg_as_int(modelbuilder)
if i == null then i = 0
min_api = i
for an in annots do
i = an.arg_as_int(modelbuilder)
if i == null then continue
min_api = min_api.max(i)
end
end
annots = modelbuilder.collect_annotations_on_modules("android_api_max", mainmodule)
if not annots.is_empty then
var i = annots.pop.arg_as_int(modelbuilder)
if i == null then i = 0
max_api = i
for an in annots do
i = an.arg_as_int(modelbuilder)
if i == null then continue
max_api = max_api.min(i)
end
end
var annot = modelbuilder.lookup_annotation_on_modules("android_api_target", mainmodule)
if annot != null then target_api = annot.arg_as_int(modelbuilder) or else 0
annots = modelbuilder.collect_annotations_on_modules("android_manifest", mainmodule)
for an in annots do manifest_lines.add an.arg_as_string(modelbuilder) or else ""
annots = modelbuilder.collect_annotations_on_modules("android_manifest_application", mainmodule)
for an in annots do manifest_application_lines.add an.arg_as_string(modelbuilder) or else ""
annots = modelbuilder.collect_annotations_on_modules("android_manifest_activity", mainmodule)
for an in annots do manifest_activity_attributes.add an.arg_as_string(modelbuilder) or else ""
annots = modelbuilder.collect_annotations_on_modules("android_activity", mainmodule)
for an in annots do
var activity = an.arg_as_string(modelbuilder)
if activity != null then activities.add activity
end
end
end
src/platform/android_annotations.nit:22,1--91,3