From 675cd5a8105a8ed290c10c22453a336a15db7631 Mon Sep 17 00:00:00 2001 From: rootVIII Date: Sat, 29 May 2021 22:20:01 -0400 Subject: [PATCH] readme --- README.md | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 90 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index aa4598a..c00d567 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,96 @@ alias pixel4='$ANDROID_HOME/emulator/emulator -avd "Pixel_4_API_30"'
   
 // Navigate to skulls/ and generate the .aar binding:
-ebitenmobile bind -target android -javapkg com.<your username>.skulls -o skulls.aar github.com/rootVIII/skulls/skullsebitenbind
+ebitenmobile bind -target android -javapkg com.<your-username>.skulls -o skulls.aar github.com/rootVIII/skulls/skullsebitenbind
+
+// Import the new .aar as a module
+// in app/src/main/java/<your username>/MainActivity.java place the following:
+
+package com.<your-username>.skullsmobile;
+
+import androidx.appcompat.app.AppCompatActivity;
+
+import android.os.Bundle;
+
+import go.Seq;
+import com.<your-username>.skulls.skullsebitenbind.EbitenView;
+
+
+public class MainActivity extends AppCompatActivity {
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_main);
+        Seq.setContext(getApplicationContext());
+    }
+
+    private EbitenView getEbitenView() {
+        return (EbitenView)this.findViewById(R.id.ebitenview);
+    }
+
+    @Override
+    protected void onPause() {
+        super.onPause();
+        this.getEbitenView().suspendGame();
+    }
+
+    @Override
+    protected void onResume() {
+        super.onResume();
+        this.getEbitenView().resumeGame();
+    }
+}
+
+// add a separate error handling class in app/src/main/java/<your username>/EbitenViewWithErrorHandling.java
+package com.solsticenet.skullsmobile;
+
+import android.content.Context;
+import android.util.AttributeSet;
+
+import com.solsticenet.skulls.skullsebitenbind.EbitenView;
+
+
+class EbitenViewWithErrorHandling extends EbitenView {
+    public EbitenViewWithErrorHandling(Context context) {
+        super(context);
+    }
+
+    public EbitenViewWithErrorHandling(Context context, AttributeSet attributeSet) {
+        super(context, attributeSet);
+    }
+
+    @Override
+    protected void onErrorOnGameUpdate(Exception e) {
+        // You can define your own error handling e.g., using Crashlytics.
+        // e.g., Crashlytics.logException(e);
+        super.onErrorOnGameUpdate(e);
+    }
+}
+
+
+// Add the below into app/src/main/res/AndroidManifest.xml:
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.<your-username>.skullsmobile">
+
+    <application
+        android:allowBackup="true"
+        android:icon="@mipmap/ic_launcher"
+        android:label="@string/app_name"
+        android:roundIcon="@mipmap/ic_launcher_round"
+        android:supportsRtl="true"
+        android:theme="@style/Theme.SkullsMobile">
+        <activity android:name=".MainActivity">
+            <intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+
+                <category android:name="android.intent.category.LAUNCHER" />
+            </intent-filter>
+        </activity>
+    </application>
+</manifest>
+