lubomyr / uae4arm

amiga emulator (android port)
GNU General Public License v2.0
61 stars 9 forks source link

Release does not build (How To Build results in no .apk on the last step) #40

Open HenrikErlandsson opened 1 year ago

HenrikErlandsson commented 1 year ago

Following this (intelligently, since it was not updated for the released version or after) results in success of all steps but the last.

build.sh produces an .apk which is a broken symlink.

Output:

Switching build target to uae4arm
./changeAppSettings.sh: 5: make: not found
Patching ../src/Accelerometer.java
Patching ../src/Advertisement.java
Patching ../src/Audio.java
Patching ../src/Clipboard.java
Patching ../src/CloudSave.java
Patching ../src/DataDownloader.java
Patching ../src/DummyService.java
Patching ../src/GLSurfaceView_SDL.java
Patching ../src/Globals.java
Patching ../src/Keycodes.java
Patching ../src/MainActivity.java
Patching ../src/RestartMainActivity.java
Patching ../src/Settings.java
Patching ../src/SettingsMenu.java
Patching ../src/SettingsMenuKeyboard.java
Patching ../src/SettingsMenuMisc.java
Patching ../src/SettingsMenuMouse.java
Patching ../src/Video.java
Patching ../src/XZInputStream.java
Patching project/AndroidManifest.xml
Patching project/src/Globals.java
Patching project/jni/Settings.mk
Patching strings.xml
grep: project/local.properties: No such file or directory
Cleaning up dependencies
Install ImageMagick to auto-resize Ouya icon from icon.png
Copying app data files from project/jni/application/src/AndroidData to project/assets
Compiling prebuilt libraries
Done
env: ‘ndk-build’: No such file or directory
lubomyr commented 1 year ago

./changeAppSettings.sh: 5: make: not found It looks like missing some dependencies https://www.makeuseof.com/how-to-fix-make-command-not-found-error-ubuntu/

env: ‘ndk-build’: No such file or directory path to ndk is not correct, check exports

HenrikErlandsson commented 1 year ago

Thank you. It's very nice to hear from you :)

I changed the path to use the newest NDK because the version in the build script is no longer downloadable.

I've not had time to look into this more since my post.

The latest version on Google Play has two issues that I would like to fix:

  1. It runs too fast if the Hz is faster than 50 (PAL). It seems it doesn't cap FPS at 50, but syncs to the Hz of the phone screen. A possible solution is to recompile and publish a new app, or change type of app to Game. This will allow phones with a Game Launcher such as Samsung to use 48Hz. This is slower than 50 but very close. For someone else to do this would require the app to be .AAB, not .APK, and I don't know a way to convert or repackage. For an existing app, Google still allows the author to upload updates as .APK. Is there a version of the build script that produces an .AAB file?

The other option is to force a screen mode of 50Hz, when the emulation starts. This is possible in other apps e.g. Youtube.

  1. Cursor keys are hardcoded to Joyport 2 and don't cause key presses when a physical keyboard is connected. All other keys work.

I would like to see these two things to be fixed so that software runs at the correct framerate and Hz, and so that a physical keyboard can be used fully.

I've set up a dedicated Linux PC specifically for working on this emulator. I have coded with Linux and SDL before, but this was a while ago. I'm experienced and I offer to collaborate and test. I should have some more spare time available in the next weeks.