Skip to content

Commit e35ef6c

Browse files
FlappyRecreatorroot
authored andcommitted
Sketchware auto-commit (2025-08-07 17:40:13)
1 parent d181cb8 commit e35ef6c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+4287
-0
lines changed

app/build.gradle

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
plugins {
2+
id 'com.android.application'
3+
}
4+
5+
android {
6+
compileSdk 34
7+
8+
useLibrary 'org.apache.http.legacy'
9+
10+
defaultConfig {
11+
applicationId "com.flappybird.recreation"
12+
namespace "com.flappybird.recreation"
13+
minSdkVersion 21
14+
targetSdkVersion 35
15+
versionCode 14
16+
versionName "1.4"
17+
}
18+
19+
buildTypes {
20+
release {
21+
minifyEnabled false
22+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
23+
}
24+
}
25+
buildFeatures {
26+
viewBinding true
27+
}
28+
}
29+
30+
dependencies {
31+
implementation fileTree(dir: 'libs', include: ['*.jar'])
32+
implementation 'androidx.core:core:1.13.1'
33+
implementation 'androidx.activity:activity:1.9.3'
34+
implementation 'androidx.lifecycle:lifecycle-runtime:2.7.0'
35+
implementation 'androidx.lifecycle:lifecycle-process:2.7.0'
36+
implementation 'androidx.lifecycle:lifecycle-livedata-core:2.7.0'
37+
implementation 'androidx.lifecycle:lifecycle-common:2.7.0'
38+
implementation 'androidx.lifecycle:lifecycle-viewmodel:2.7.0'
39+
implementation 'androidx.lifecycle:lifecycle-viewmodel-savedstate:2.7.0'
40+
implementation 'org.jetbrains:annotations:26.0.1'
41+
implementation 'androidx.profileinstaller:profileinstaller:1.4.1'
42+
implementation 'androidx.webkit:webkit:1.13.0'
43+
implementation 'androidx.transition:transition:1.6.0'
44+
implementation 'com.google.android.material:material:1.14.0-alpha01'
45+
implementation 'androidx.dynamicanimation:dynamicanimation:1.1.0'
46+
implementation 'androidx.graphics:graphics-shapes:1.0.1'
47+
implementation 'com.google.code.gson:gson:2.13.1'
48+
}

app/proguard-rules.pro

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
-repackageclasses
2+
-ignorewarnings
3+
-dontwarn
4+
-dontnote

app/src/main/AndroidManifest.xml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<manifest
2+
xmlns:android="http://schemas.android.com/apk/res/android"
3+
package="com.flappybird.recreation">
4+
<application
5+
android:allowBackup="true"
6+
android:icon="@mipmap/launcher"
7+
android:label="@string/app_name"
8+
android:name=".FlappyClassy"
9+
android:requestLegacyExternalStorage="true"
10+
android:usesCleartextTraffic="true"
11+
android:theme="@style/AppTheme">
12+
<activity
13+
android:name=".MainActivity"
14+
android:configChanges="orientation|screenSize|keyboardHidden|smallestScreenSize|screenLayout"
15+
android:hardwareAccelerated="true"
16+
android:supportsPictureInPicture="true"
17+
android:screenOrientation="portrait" />
18+
<activity
19+
android:name=".GearslogoActivity"
20+
android:configChanges="orientation|screenSize|keyboardHidden|smallestScreenSize|screenLayout"
21+
android:hardwareAccelerated="true"
22+
android:supportsPictureInPicture="true"
23+
android:screenOrientation="portrait"
24+
android:exported="true">
25+
<intent-filter>
26+
<action android:name="android.intent.action.MAIN" />
27+
<category android:name="android.intent.category.LAUNCHER" />
28+
</intent-filter>
29+
</activity>
30+
<activity
31+
android:name=".SettingsActivity"
32+
android:configChanges="orientation|screenSize|keyboardHidden|smallestScreenSize|screenLayout"
33+
android:hardwareAccelerated="true"
34+
android:supportsPictureInPicture="true"
35+
android:screenOrientation="portrait" />
36+
<activity
37+
android:name=".DebugActivity"
38+
android:screenOrientation="portrait"
39+
android:theme="@style/AppTheme.DebugActivity" />
40+
<uses-library
41+
android:name="org.apache.http.legacy"
42+
android:required="false" />
43+
</application>
44+
</manifest>
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package com.flappybird.recreation;
2+
3+
import android.app.Activity;
4+
import android.content.Intent;
5+
import android.os.Bundle;
6+
import android.text.SpannableStringBuilder;
7+
import android.util.Log;
8+
import android.widget.HorizontalScrollView;
9+
import android.widget.ScrollView;
10+
import android.widget.TextView;
11+
12+
import java.util.HashMap;
13+
import java.util.Map;
14+
15+
public class DebugActivity extends Activity {
16+
17+
private static final Map<String, String> exceptionMap = new HashMap<String, String>() {{
18+
put("StringIndexOutOfBoundsException", "Invalid string operation\n");
19+
put("IndexOutOfBoundsException", "Invalid list operation\n");
20+
put("ArithmeticException", "Invalid arithmetical operation\n");
21+
put("NumberFormatException", "Invalid toNumber block operation\n");
22+
put("ActivityNotFoundException", "Invalid intent operation\n");
23+
}};
24+
25+
@Override
26+
protected void onCreate(Bundle savedInstanceState) {
27+
super.onCreate(savedInstanceState);
28+
29+
SpannableStringBuilder formattedMessage = new SpannableStringBuilder();
30+
Intent intent = getIntent();
31+
String errorMessage = "";
32+
33+
if (intent != null) {
34+
errorMessage = intent.getStringExtra("error");
35+
}
36+
37+
if (!errorMessage.isEmpty()) {
38+
String[] split = errorMessage.split("\n");
39+
40+
String exceptionType = split[0];
41+
String message = exceptionMap.containsKey(exceptionType) ? exceptionMap.get(exceptionType) : "";
42+
43+
if (!message.isEmpty()) {
44+
formattedMessage.append(message);
45+
}
46+
47+
for (int i = 1; i < split.length; i++) {
48+
formattedMessage.append(split[i]);
49+
formattedMessage.append("\n");
50+
}
51+
} else {
52+
formattedMessage.append("No error message available.");
53+
}
54+
55+
setTitle(getTitle() + " Crashed");
56+
57+
TextView errorView = new TextView(this);
58+
errorView.setText(formattedMessage);
59+
errorView.setTextIsSelectable(true);
60+
61+
HorizontalScrollView hscroll = new HorizontalScrollView(this);
62+
ScrollView vscroll = new ScrollView(this);
63+
64+
hscroll.addView(vscroll);
65+
vscroll.addView(errorView);
66+
67+
setContentView(hscroll);
68+
}
69+
}

0 commit comments

Comments
 (0)