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>
+