redef fun compile_dir
do
- var android_project_root = "{super}/android/"
+ var android_project_root = "{root_compile_dir}/android/"
self.android_project_root = android_project_root
return "{android_project_root}/jni/nit_compile/"
end
redef fun write_files(compile_dir, cfiles)
do
var android_project_root = android_project_root.as(not null)
- var project = toolcontext.modelbuilder.android_project_for(compiler.mainmodule)
- var short_project_name = compiler.mainmodule.name.replace("-", "_")
+ var project = new AndroidProject(toolcontext.modelbuilder, compiler.mainmodule)
var release = toolcontext.opt_release.value
var app_name = project.name
- if app_name == null then app_name = compiler.mainmodule.name
if not release then app_name += " Debug"
- var app_package = project.java_package
- if app_package == null then app_package = "org.nitlanguage.{short_project_name}"
+ var short_project_name = project.short_name
+
+ var app_package = project.namespace
if not release then app_package += "_debug"
var app_version = project.version
- if app_version == null then app_version = "1.0"
var app_min_api = project.min_api
if app_min_api == null then app_min_api = 10
android:label="@string/app_name"
android:hasCode="true"
android:debuggable="{{{not release}}}"
- {{{icon_declaration}}}
- android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation">
+ {{{icon_declaration}}}>
"""
for activity in project.activities do
end
toolcontext.exec_and_check(["ln", "-s", "{share_dir}/libgc/arm/include/gc/",
- "{android_project_root}/jni/nit_compile/gc"], "Android project error")
+ "{compile_dir}/gc"], "Android project error")
### Link to assets (for mnit and others)
# This will be accessed from `android_project_root`
# Android resources folder
var res_dir = project_root / "res"
if res_dir.file_exists then
- # copy the res folder to .nit_compile
+ # copy the res folder to the compile dir
res_dir = res_dir.realpath
toolcontext.exec_and_check(["cp", "-R", res_dir, android_project_root], "Android project error")
end
var tsa_server= "TSA_SERVER".environ
if key_alias.is_empty then
- toolcontext.fatal_error(null,
- "Fatal Error: the environment variable `KEY_ALIAS` must be set to use the `--release` option on Android projects.")
+ toolcontext.error(null,
+ "Error: the environment variable `KEY_ALIAS` must be set to use the `--release` option on Android projects.")
+ return
end
args = ["jarsigner", "-sigalg", "MD5withRSA", "-digestalg", "SHA1", apk_path, key_alias]