diff --git a/lutinModule.py b/lutinModule.py index a8e24ee..1d88644 100644 --- a/lutinModule.py +++ b/lutinModule.py @@ -57,10 +57,10 @@ class module: self.folders=[] self.isBuild=False ## end of basic INIT ... - if moduleType == 'BINARY' \ - or moduleType == 'LIBRARY' \ - or moduleType == 'PACKAGE' \ - or moduleType == 'PREBUILD': + if moduleType == 'BINARY' \ + or moduleType == 'LIBRARY' \ + or moduleType == 'PACKAGE' \ + or moduleType == 'PREBUILD': self.type=moduleType else : debug.error('for module "%s"' %moduleName) @@ -81,9 +81,11 @@ class module: "DESCRIPTION" : set(""), "VERSION" : set("0.0.0"), "NAME" : set("no-name"), # name of the application - "ANDROID_MANIFEST" : set(""), # By default generate the manifest + "ANDROID_MANIFEST" : "", # By default generate the manifest "ANDROID_JAVA_FILES" : ["DEFAULT"], # when user want to create his own services and activities "ANDROID_RESOURCES" : [], + "ANDROID_APPL_TYPE" : "APPL", # the other mode is "WALLPAPER" ... and later "WIDGET" + "ANDROID_WALLPAPER_PROPERTIES" : [], # To create properties of the wallpaper (no use of EWOL display) "RIGHT" : [] } @@ -622,6 +624,8 @@ class module: self.packageProp[variable] = value elif "ANDROID_RESOURCES" == variable: self.packageProp[variable] = value + elif "ANDROID_APPL_TYPE" == variable: + self.packageProp[variable] = value else: debug.error("not know pak element : '" + variable + "'") diff --git a/lutinTargetAndroid.py b/lutinTargetAndroid.py index 806d215..ab1b3b2 100644 --- a/lutinTargetAndroid.py +++ b/lutinTargetAndroid.py @@ -105,20 +105,39 @@ class Target(lutinTarget.Target): lutinTools.CreateDirectoryOfFile(self.file_finalAbstraction) # Create file : tmpFile = open(self.file_finalAbstraction, 'w') - tmpFile.write( "/**\n") - tmpFile.write( " * @author Edouard DUPIN, Kevin BILLONNEAU\n") - tmpFile.write( " * @copyright 2011, Edouard DUPIN, all right reserved\n") - tmpFile.write( " * @license BSD v3 (see license file)\n") - tmpFile.write( " * @note This file is autogenerate ==> see documantation to generate your own\n") - tmpFile.write( " */\n") - tmpFile.write( "package "+pkgProperties["COMPAGNY_TYPE"]+"."+pkgProperties["COMPAGNY_NAME2"]+"." + pkgName + ";\n") - tmpFile.write( "import org.ewol.EwolActivity;\n") - tmpFile.write( "public class " + pkgName + " extends EwolActivity {\n") - tmpFile.write( " public void onCreate(android.os.Bundle savedInstanceState) {\n") - tmpFile.write( " super.onCreate(savedInstanceState);\n") - tmpFile.write( " initApkPath(\""+pkgProperties["COMPAGNY_TYPE"]+"\", \""+pkgProperties["COMPAGNY_NAME2"]+"\", \"" + pkgName + "\");\n") - tmpFile.write( " }\n") - tmpFile.write( "}\n") + if pkgProperties["ANDROID_APPL_TYPE"]=="APPL": + tmpFile.write( "/**\n") + tmpFile.write( " * @author Edouard DUPIN, Kevin BILLONNEAU\n") + tmpFile.write( " * @copyright 2011, Edouard DUPIN, all right reserved\n") + tmpFile.write( " * @license BSD v3 (see license file)\n") + tmpFile.write( " * @note This file is autogenerate ==> see documantation to generate your own\n") + tmpFile.write( " */\n") + tmpFile.write( "package "+pkgProperties["COMPAGNY_TYPE"]+"."+pkgProperties["COMPAGNY_NAME2"]+"." + pkgName + ";\n") + tmpFile.write( "import org.ewol.EwolActivity;\n") + tmpFile.write( "public class " + pkgName + " extends EwolActivity {\n") + tmpFile.write( " public void onCreate(android.os.Bundle savedInstanceState) {\n") + tmpFile.write( " super.onCreate(savedInstanceState);\n") + tmpFile.write( " initApkPath(\""+pkgProperties["COMPAGNY_TYPE"]+"\", \""+pkgProperties["COMPAGNY_NAME2"]+"\", \"" + pkgName + "\");\n") + tmpFile.write( " }\n") + tmpFile.write( "}\n") + else : + # wallpaper mode ... + tmpFile.write( "/**\n") + tmpFile.write( " * @author Edouard DUPIN, Kevin BILLONNEAU\n") + tmpFile.write( " * @copyright 2011, Edouard DUPIN, all right reserved\n") + tmpFile.write( " * @license BSD v3 (see license file)\n") + tmpFile.write( " * @note This file is autogenerate ==> see documantation to generate your own\n") + tmpFile.write( " */\n") + tmpFile.write( "package "+pkgProperties["COMPAGNY_TYPE"]+"."+pkgProperties["COMPAGNY_NAME2"]+"." + pkgName + ";\n") + tmpFile.write( "import org.ewol.EwolWallpaper;\n") + tmpFile.write( "public class " + pkgName + " extends EwolWallpaper {\n") + tmpFile.write( " public static final String SHARED_PREFS_NAME = \"" + pkgName + "settings\";\n") + tmpFile.write( " public Engine onCreateEngine() {\n") + tmpFile.write( " Engine tmpEngine = super.onCreateEngine();\n") + tmpFile.write( " initApkPath(\""+pkgProperties["COMPAGNY_TYPE"]+"\", \""+pkgProperties["COMPAGNY_NAME2"]+"\", \"" + pkgName + "\");\n") + tmpFile.write( " return tmpEngine;\n") + tmpFile.write( " }\n") + tmpFile.write( "}\n") tmpFile.flush() tmpFile.close() @@ -126,7 +145,7 @@ class Target(lutinTarget.Target): lutinTools.CopyFile(pkgProperties["ICON"], self.GetStagingFolder(pkgName) + "/res/drawable/icon.png", True) - if (pkgProperties["ANDROID_MANIFEST"]!=""): + if pkgProperties["ANDROID_MANIFEST"]!="": debug.printElement("pkg", "AndroidManifest.xml", "<==", pkgProperties["ANDROID_MANIFEST"]) lutinTools.CopyFile(pkgProperties["ANDROID_MANIFEST"], self.GetStagingFolder(pkgName) + "/AndroidManifest.xml", True) else: @@ -140,34 +159,52 @@ class Target(lutinTarget.Target): tmpFile.write( " android:versionName=\""+pkgProperties["VERSION"]+"\"> \n") tmpFile.write( " \n") tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") else: - tmpFile.write( " android:label=\"" + pkgProperties["NAME"] + "\" \n") - tmpFile.write( " android:icon=\"@drawable/icon\" \n") - tmpFile.write( " android:hardwareAccelerated=\"true\" \n") - tmpFile.write( " android:configChanges=\"orientation\"> \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - tmpFile.write( " \n") - #tmpFile.write( " \n") - #tmpFile.write( " \n") - #tmpFile.write( " \n") - #tmpFile.write( " \n") - #tmpFile.write( " \n") - ##tmpFile.write( " android:resource=\"@xml/fallingsnow_wp\" />\n") - #tmpFile.write( " \n") - tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + if True: #len(pkgProperties["ANDROID_WALLPAPER_PROPERTIES"])!=0: + tmpFile.write( " \n") + tmpFile.write( " \n") + if True: #len(pkgProperties["ANDROID_WALLPAPER_PROPERTIES"])!=0: + tmpFile.write( " \n") + tmpFile.write( " \n") + tmpFile.write( " \n") + # TODO : Generate Needed files for configurations + # TODO : Set the configuration properties on the ewol properties + # TODO : Set wallpaper without properties + # write package autorisations : if True==self.CheckRightPackage(pkgProperties, "WRITE_EXTERNAL_STORAGE"): tmpFile.write( " \n") if True==self.CheckRightPackage(pkgProperties, "CAMERA"): @@ -236,9 +273,7 @@ class Target(lutinTarget.Target): filesString += self.folder_ewol + "/sources/android/src/org/ewol/EwolRendererGL.java " filesString += self.folder_ewol + "/sources/android/src/org/ewol/EwolSurfaceViewGL.java " filesString += self.folder_ewol + "/sources/android/src/org/ewol/EwolActivity.java " - filesString += self.folder_ewol + "/sources/android/src/org/ewol/EwolWallpaperService.java " - filesString += self.folder_ewol + "/sources/android/src/org/ewol/LessonTwoRenderer.java " - filesString += self.folder_ewol + "/sources/android/src/org/ewol/LessonThreeRenderer.java " + filesString += self.folder_ewol + "/sources/android/src/org/ewol/EwolWallpaper.java " else: filesString += element + " "