Skip to content

Commit 20312e5

Browse files
committed
write MainActivity and proper layout file during the build
Signed-off-by: Umair Khan <[email protected]>
1 parent 1823bf6 commit 20312e5

File tree

1 file changed

+26
-6
lines changed

1 file changed

+26
-6
lines changed

src/processing/mode/android/AndroidBuild.java

Lines changed: 26 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,8 @@ public File createProject() throws IOException, SketchException {
167167

168168
final File resFolder = new File(tmpFolder, "res");
169169
writeRes(resFolder, sketchClassName);
170+
writeMainActivity(srcFolder);
171+
170172

171173
// new location for SDK Tools 17: /opt/android/tools/proguard/proguard-android.txt
172174
// File proguardSrc = new File(sdk.getSdkFolder(), "tools/lib/proguard.cfg");
@@ -854,16 +856,34 @@ private File mkdirs(final File parent, final String name) throws SketchException
854856
}
855857
return result;
856858
}
859+
860+
861+
private void writeMainActivity(final File file) {
862+
File mainActivityFile = new File(file, "MainActivity.java");
863+
final PrintWriter writer = PApplet.createWriter(mainActivityFile);
864+
writer.println("package " + basePackage + "." + sketch.getName());
865+
writer.println("import android.app.Activity;");
866+
writer.println("public class TestActivity extends Activity {");
867+
writer.println(" @Override");
868+
writer.println(" protected void onCreate(Bundle savedInstanceState) {");
869+
writer.println(" super.onCreate(savedInstanceState);");
870+
writer.println(" setContentView(R.layout.main);");
871+
writer.println(" }");
872+
writer.println("}");
873+
writer.flush();
874+
writer.close();
875+
}
857876

858877

859878
private void writeResLayoutMain(final File file) {
860879
final PrintWriter writer = PApplet.createWriter(file);
861-
writer.println("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
862-
writer.println("<LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"");
863-
writer.println(" android:orientation=\"vertical\"");
864-
writer.println(" android:layout_width=\"fill_parent\"");
865-
writer.println(" android:layout_height=\"fill_parent\">");
866-
writer.println("</LinearLayout>");
880+
writer.println("<fragment xmlns:android=\"http://schemas.android.com/apk/res/android\"");
881+
writer.println(" xmlns:tools=\"http://schemas.android.com/tools\"");
882+
writer.println(" android:id=\"@+id/fragment\"");
883+
writer.println(" android:name=\"." + sketchClassName + "\"");
884+
writer.println(" tools:layout=\"@layout/fragment_main\"");
885+
writer.println(" android:layout_width=\"match_parent\"");
886+
writer.println(" android:layout_height=\"match_parent\" />");
867887
writer.flush();
868888
writer.close();
869889
}

0 commit comments

Comments
 (0)