Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Aa #148

Open
wants to merge 156 commits into
base: limbo-6-native
Choose a base branch
from
Open

Aa #148

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
156 commits
Select commit Hold shift + click to select a range
02e9e71
refactored sdl mode
Aug 17, 2021
152d2e2
remove vnc client
Sep 4, 2021
0882d47
removed obsolete layouts
Sep 4, 2021
71973d4
fixed gradle
Sep 4, 2021
ee19edc
removed vnc client extensions
Sep 4, 2021
06450df
redesign of main classes
Sep 4, 2021
81ebef9
redesign of jni bridge
Sep 4, 2021
b3c6f16
redesign of utility classes
Sep 4, 2021
c9ff992
redesign of File utility classes
Sep 4, 2021
6bff84b
new machine model
Sep 4, 2021
4e36361
network classes
Sep 4, 2021
1f98019
new key mapper
Sep 4, 2021
73d9d7b
clean up
Sep 4, 2021
ba14d46
patches for SDL java
Sep 4, 2021
223c87f
new section layouts
Sep 4, 2021
49cf7e3
rest of section layouts
Sep 4, 2021
5930612
key mapper layout
Sep 4, 2021
f7133c9
main layouts
Sep 4, 2021
6032fef
arch definitions
Sep 4, 2021
85ef634
more settings
Sep 4, 2021
9f8af7f
arrays and strings
Sep 4, 2021
9881e54
main activities
Sep 4, 2021
672afe9
Manifests
Sep 4, 2021
741393d
fixed displayed error message
Sep 5, 2021
50313ee
fixed inserting file paths
Sep 5, 2021
3d32714
run in ui thread
Sep 5, 2021
ec35308
added touch screen for desktop mode
Sep 5, 2021
f53b5df
refresh and tag changes for limbo
Sep 5, 2021
b5d94f2
new features: better trackpad, external mouse, touchscreen, fullscreen
Sep 5, 2021
49885eb
removed obsolete settings and added immersive (wip)
Sep 5, 2021
2226d59
qmp calls should be async
Sep 5, 2021
0291fe9
cleanup
Sep 5, 2021
81babe4
added immersive configuration
Sep 5, 2021
7ac0254
updated orientation
Sep 5, 2021
32eb5dc
fixed touchscreen event not processing when keymapper is active
Sep 5, 2021
3034428
removed padding for better calculations
Sep 5, 2021
6284178
check boundaries
Sep 6, 2021
2cebe78
trigger display update
Sep 6, 2021
dc993a7
refresh the display at the beginning
Sep 6, 2021
9d05209
fixed keymapper
Sep 6, 2021
5aa7faf
fix refresh display
Sep 6, 2021
6ba61d2
fixed resolution change
Sep 7, 2021
1f24935
reduced qmp trials
Sep 7, 2021
97461ff
refactored viewlistener impl name
Sep 7, 2021
2fb1677
clean up
Sep 7, 2021
6274729
separate some classes
Sep 7, 2021
e54b334
refactored
Sep 7, 2021
59cd65b
clean up
Sep 7, 2021
a0e218b
added option for mouse out of bounds
Sep 7, 2021
c1899d4
additional
Sep 7, 2021
86242c2
fix descr
Sep 7, 2021
6c21834
fixed strings
Sep 7, 2021
77edca7
prevent write menu actions
Sep 9, 2021
6a0e2ed
better os download links
Sep 11, 2021
757fc0f
enabled legacy drives option
Sep 11, 2021
d530325
fixed some deprecated options
Sep 11, 2021
e779cf8
configuration for syncing file descriptors
Sep 12, 2021
993cc95
fixed disabling audio when vnc
Sep 12, 2021
fe79e40
config for legacy parameters
Sep 12, 2021
92dcfed
added emu version
Sep 12, 2021
ebcdecd
configurable emu version
Sep 12, 2021
fdea1c5
fix for qemu 2.9.1
Sep 12, 2021
9adc2d5
fix sync
Sep 12, 2021
ef65109
key and mouse delay options and reset layout only when machine running
Sep 12, 2021
1ff6457
attempt to fix reset layout
Sep 12, 2021
9075eb9
some ui changes
Sep 12, 2021
864d7e1
minimum delay for reset layout
Sep 12, 2021
1254667
fix extra params
Sep 12, 2021
73ee5fa
set minimum on the delay options to make sure qemu reads all events
Sep 12, 2021
7cbbbf2
clean up logs
Sep 13, 2021
8b67c56
attempt to fix the stackoverflowerror
Sep 14, 2021
93c9a1d
refactor sending multiple keys
Sep 14, 2021
c7f0bfe
added shorter delays
Sep 14, 2021
b4f4ea6
sync reset layout
Sep 14, 2021
c1b1196
better fullscreen
Sep 15, 2021
3858787
machine header change
Sep 15, 2021
a201742
note for fixing the log
Sep 19, 2021
9402ce4
rearranged key display for keymapper
Sep 19, 2021
a7b9e26
support for sdl idle refresh rate
Sep 19, 2021
7f58c16
support for aaudio and ndk platform 26
Sep 19, 2021
33f45eb
Merge branch 'limbo-6-native' into limbo-6
Sep 20, 2021
952b05b
support for qemu 5.1.0
Sep 20, 2021
bbbac04
add version name to help dialog
Sep 20, 2021
b2c8125
fixed links and help
Sep 20, 2021
105f29e
check build number instead for aaudio
Sep 20, 2021
531ce45
fix for settings
Sep 20, 2021
df3b793
fix package info retrieval
Sep 20, 2021
0cabc31
cleanup
Sep 20, 2021
7622e8e
added more default options
Sep 20, 2021
830eb8c
changed min sdk ver
Sep 20, 2021
0886e53
clean up
Sep 20, 2021
440a7a5
fixed debug var
Sep 20, 2021
f066115
new instructions
Sep 20, 2021
d5ceb61
typo
Sep 20, 2021
e0d4bd7
fixed more typos
Sep 20, 2021
d4ddf04
fixed other os link
Sep 20, 2021
0d291d3
update changelog
Sep 20, 2021
b4eabdd
remove format
Sep 20, 2021
a2d22b4
removed unused params
Sep 20, 2021
ae26408
support building and packaging from windows
Sep 20, 2021
ce4fe51
git recommendation
Sep 20, 2021
0d4f6e4
workaround for notifying the ui that vm has continued
Sep 20, 2021
90af171
removed factory
Sep 20, 2021
335bfb6
changelog should be readable
Sep 21, 2021
e0f56f0
fixed other oses link
Sep 21, 2021
799f140
no support for sparc64
Sep 21, 2021
9387ea3
fixed library names
Sep 21, 2021
9ad667b
sparc no vga
Sep 21, 2021
594f833
Limbo Emulator v6.0.0 (QEMU v2.9.1)
Sep 21, 2021
3ba02c7
instruction added for QEMU 2.9.1
Sep 21, 2021
90bd17c
instructions
Sep 21, 2021
3bfb6e9
Limbo Emulator v6.0.1 (QEMU 2.9.1)
Sep 21, 2021
110c5fd
fix log file for arm
Sep 21, 2021
b889ec9
centralized package info
Sep 21, 2021
77a1c22
fixed setting append
Sep 21, 2021
ef5fb7c
use merged manifest
Sep 21, 2021
90394a7
Limbo v6.0.0 release
Sep 22, 2021
9e3f2e3
Limbo v6.0.0 release
Sep 22, 2021
43e52a1
Limbo v6.0.0 release
Sep 22, 2021
8ac6151
Limbo version 6.0.0
Sep 22, 2021
7311976
Limbo v6.0.1
Sep 22, 2021
a374f53
support for older devices
Sep 23, 2021
e9e010e
support for aaudio without breaking support for older devices
Sep 23, 2021
0c5e375
fix keymapper restore orientation when desktop mode
Sep 23, 2021
1d566bc
fix crash when mouse is outside of window
Sep 23, 2021
74e7d8a
fix mouse crash for 5.1.0
Sep 23, 2021
77474ec
install qemu version file
Sep 24, 2021
f28056c
qemu version
Sep 24, 2021
99a5bfb
one internal version only with build variants
Sep 24, 2021
ecb2ee0
one version only with variants
Sep 24, 2021
1caf270
revert to previous
Sep 24, 2021
6030e29
Limbo ver 6.0.0
Sep 25, 2021
7659250
Update README.md
limboemu Sep 26, 2021
e73d191
Disk enhancements
Sep 30, 2021
256129d
enhancements for booting
Sep 30, 2021
1bc4229
moved accel options after extra params
Dec 25, 2021
496e3a1
fixed dialog software updates option
Dec 25, 2021
1ba5235
added default for disk cache
Dec 25, 2021
b706773
fixed crash when no machine loaded
Dec 25, 2021
77a1a3b
support for import custom bios
Dec 25, 2021
5e0641e
manifest 6.0.1
Feb 27, 2022
78f70c2
trigger saving edit text before start vm
Feb 27, 2022
587d2fc
clean up
Feb 27, 2022
d79bfd3
file manager changes
Feb 28, 2022
c8c51b0
fix gcc support
Mar 3, 2022
895f865
fixed instructions
Mar 3, 2022
e3afe0b
fixed patches
Mar 3, 2022
5232ffe
ignore qemu versions
Mar 3, 2022
0966f6d
refactor executor to c
Mar 3, 2022
1159aa4
Merge branch '6.0.1-native' into Branch_Branch_6.0.1
Mar 5, 2022
3442a71
changelog
Mar 5, 2022
4635d01
check for undefined symbols
Mar 5, 2022
62d4aa6
convert to c
Mar 5, 2022
cb29b69
fixed breakpoint tb invalidation
Mar 5, 2022
69236c1
updated defaults
Mar 5, 2022
887c6a6
software update checker by default is false
Mar 9, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ gradle
/gradlew.bat
obj/
jniLibs/
QEMU_VERSION

jnilibs
limbotest
Expand All @@ -69,6 +70,5 @@ limbotest

sync.sh
gitsync.sh
/limbo-android-lib/src/main/jni/qemu.5.1.0
/limbo-android-lib/src/main/jni/qemu.2.9.1

/limbo-android-lib/src/main/jni/qemu-2.9.1/
/limbo-android-lib/src/main/jni/qemu-5.1.0/
124 changes: 75 additions & 49 deletions README.developers
Original file line number Diff line number Diff line change
Expand Up @@ -14,43 +14,39 @@ https://github.com/limboemu/limbo
2. Requirements:

Android SDK
Android NDK: r14b/gcc or r23/clang
Android Studio (3.1.1 prefered)
Android device with Android OS 5.0 (Lollipop) and above
Linux Desktop pc (Ubuntu prefered)
Android NDK: r14b/gcc or r23b/clang
Android Studio (3.1.1 preferred)
Android device with Android OS 8.0 (Oreo) and above
Linux Desktop pc (Ubuntu preferred)
Make sure you have the following packages installed, if not run:
sudo apt-get install make autoconf automake git python binutils
sudo apt-get install libtool-bin pkg-config flex bison gettext texinfo
For developement you can use your own editors Geany is highly
recommended for the native code
sudo apt-get install libtool-bin pkg-config flex bison gettext texinfo rsync
For development you can use your own editors Geany is highly
recommended for editing the native code

===============================================================================

3. Known Issues:
https://github.com/limboemu/limbo/issues

===============================================================================

4. Update Configuration

a. Update the path to the ndk directory in file limbo-android-lib/src/main/jni/android-limbo-config.mak
If you use gcc set:
USE_GCC ?= true
otherwise use:
USE_GCC ?= false
If you build the supported QEMU version then the only thing you need to do is edit file:
limbo-android-lib/src/main/jni/android-limbo-config.mak
In all other cases you have to look at the config files under:
limbo-android-lib/src/main/jni/android-config/

b. Add the NDK directory to your PATH variable so makefile can find ndk-build
Examples:
For bash if you use gcc:
export PATH=$PATH:/home/dev/tools/ndk/android-ndk-r14b
or if you use clang:
export PATH=$PATH:/home/dev/tools/ndk/android-ndk-r23
For more information see the Building section.


5. Get and Patch libraries
5. Get and Compile external libraries

#Make sure you're under the jni directory
cd ./limbo-android-lib/src/main/jni


# Now download the source code for the external libraries and unzip them under the jni directory
#Note: if some of these file links don't download with wget use your browser to download them

##### Get QEMU
Expand All @@ -60,6 +56,10 @@ https://github.com/limboemu/limbo
wget http://download.qemu-project.org/qemu-5.1.0.tar.xz -P /tmp/
tar -xJf /tmp/qemu-5.1.0.tar.xz
mv qemu-5.1.0 qemu
# For QEMU version 2.9.1:
wget http://download.qemu-project.org/qemu-2.9.1.tar.xz -P /tmp/
tar -xJf /tmp/qemu-2.9.1.tar.xz
mv qemu-2.9.1 qemu

##### GET glib
wget https://ftp.gnome.org/pub/GNOME/sources/glib/2.56/glib-2.56.1.tar.xz -P /tmp/
Expand Down Expand Up @@ -93,19 +93,16 @@ https://github.com/limboemu/limbo
qemu/
SDL2/

===============================================================================

6. Apply patches

### Apply patch for QEMU:
# example for 5.1.0:
Make sure the following line is uncommented in android-qemu-config.mak
include android-qemu-config-5.1.0.mak
Apply the patch on the terminal:
cd ./limbo-android-lib/src/main/jni/qemu/
patch -p1 < ../patches/qemu-5.1.0.patch

# for QEMU versions 4 and above you can enable MTTCG on the ui
# this will only work if your android device is 64bit
modify Config.java:
set to true: public static boolean enableMTTCG = true;
# for 2.9.1:
patch -p1 < ../patches/qemu-2.9.1.patch

### Apply glib patch for Limbo:
cd ./limbo-android-lib/src/main/jni/glib/
Expand All @@ -116,42 +113,54 @@ https://github.com/limboemu/limbo
patch -p1 < ../patches/sdl2-2.0.8.patch

### Other QEMU versions:
# If you want to distribute Limbo build with other QEMU versions, create your own patch like this:
# If you want to redistribute Limbo build with other QEMU versions, create your own patch like this:
cd /limbo-android-lib/src/main/jni/qemu/
diff -ru --no-dereference /tmp/qemu-x.x.x . | grep -v '^Only in' > ../patches/qemu-x.x.x.patch
Don't forget to create your android-qemu-config-x.x.x.mak file
and include it in android-qemu-config.mak

===============================================================================
5. Build

a. To build the NDK part of the app make sure you're under the jni directory:
cd limbo-android-lib/src/main/jni
7. Build

Make sure you update the android-config/android-limbo-config.mak file with the NDK path you have installed:
a. To build the native part of the app make sure you're under the jni directory:
cd limbo-android-lib/src/main/jni

Make sure you update file android-limbo-config.mak with the NDK folder to your installation folder
keep in mind the last NDK version that supported gcc was r14b. The alternative is to use clang
with ndk version r23. For example:
NDK_ROOT = /home/dev/tools/ndk/android-ndk-r14b

The rest of the configuration is for specifying the right QEMU version: USE_QEMU_VERSION
the host architecture (android device): BUILD_HOST
and the emulator guest architecture: BUILD_GUEST

b. From Android Studio import BOTH the Android library limbo-android-lib AND the module for the guest
architecture you need (x86,arm,ppc,sparc) ie limbo-android-x86.

c. Build the native libraries:
cd limbo-android-lib/src/main/jni:
# Make sure you're still under the jni directory:
cd limbo-android-lib/src/main/jni

To build Limbo Emulator:
# Instead of editing android-limbo-config.mak you can also supply the variables on the command line.
# For example:
export BUILD_HOST=<EABI>
export BUILD_GUEST=<GUEST_ARCH>
export NDK_DEBUG=<ENABLE_DEBUG>
make limbo

where:
EABI is the Android device type (host arch): armeabi-v7a, arm64-v8a, x86, x86_64
GUEST_ARCH is the Emulator type: x86_64-softmmu,aarch64-softmmu,sparc64-softmmu,ppc64-softmmu
ENABLE_DEBUG is 1 (optional)

# To start the build type on your terminal:
make limbo

Notes:
If you want to remove ALL previously compiled native objects and libraries:
make clean

If you're building apk for multiple host architectures you need to do in betweeen builds:
If you're building apk for multiple host architectures you need to do in between builds:
make distclean

If you're building apk for multiple guest architectures you can specify them with commas:
Expand Down Expand Up @@ -194,6 +203,16 @@ https://github.com/limboemu/limbo
export BUILD_GUEST=x86_64-softmmu,aarch64-softmmu
make limbo

8) To build limbo for older devices with gcc set the following options:
export NDK_ROOT=/home/dev/tools/ndk/android-ndk-r14b
export USE_GCC=true
export BUILD_HOST=armeabi-v7a
export BUILD_GUEST=x86_64-softmmu
export USE_QEMU_VERSION=2.9.1
export USE_AAUDIO=false

For more options see android-limbo-config.mak

You should now have the following libraries in these 2 folders:

limbo-android-lib/src/main/jniLibs/<EABI>/
Expand Down Expand Up @@ -233,8 +252,11 @@ https://github.com/limboemu/limbo

Important:
From Android studio click Build> Rebuild Project and Run > Debug

g. To debug the native code for a particular guest:

===============================================================================

8. Debugging
To debug the native code for a particular guest:

# for x86 guest and ARM64 phone:
export BUILD_HOST=arm64-v8a
Expand All @@ -261,7 +283,8 @@ https://github.com/limboemu/limbo
To see stack (backtrace): bt

===============================================================================
6. Development Notes

9. Development Notes

a. Codes Changes for Android compatibility are in patch files marked with __ANDROID__

Expand All @@ -274,7 +297,7 @@ https://github.com/limboemu/limbo
limbo-android-lib/src/main/jni/android-config/android-qemu-config.mak

d. Advanced Device Configuration files:
limbo-android-lib/src/main/jni/android-config/android-device-config/*.mak
limbo-android-lib/src/main/jni/android-config/android-config/*.mak

e. Important Makefiles:
limbo-android-lib/src/main/jni/Makefile
Expand All @@ -284,9 +307,16 @@ https://github.com/limboemu/limbo
limbo-android-lib/src/main/jni/android-qemu-build.mak

f. Frontend UI options configuration see: Config.java

g. When using git apply the following setting to your config file if you want to use
return new lines for windows:
[core]
eol = true
autocrlf = input
fileMode = false

===============================================================================
7. Run
10. Run

a. Installing a full Qwerty keyboard for Android like Hacker's keyboard
from the Google Android store. Make sure you use Transparent theme
Expand All @@ -299,19 +329,15 @@ https://github.com/limboemu/limbo
f. Have fun!

===============================================================================
8. Changelog
10. Changelog
See limbo-android-lib/src/main/assets/CHANGELOG for release notes

===============================================================================
9. License
11. License

Limbo PC Emulator is released under GPL v2 License.
All icons unders /res are from Gnome Project (GPL v2 License)
All icons under /res are from Gnome Project (GPL v2 License)
See file COPYING under root directory
and LICENSE under limbo-android-lib/src/main/assets

Other source included are released under their own license please view Licenses under each subdirectory

===============================================================================

Endofdoc
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Limbo Emulator (QEMU) for Android
#
# For APK Downloads, Guides, and Help visit the Limbo Wiki:
# https://github.com/limboemu/limbo/wiki
# For APK Downloads, Guides, and Help visit:
# https://virtualmachinery.weebly.com

Limbo is a QEMU-based emulator for Android supports emulation for these architectures:
x86/x86_64
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
501.00
600.01
8 changes: 1 addition & 7 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,9 @@ org.gradle.jvmargs=-Xmx2000m
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
org.gradle.parallel=true

org.gradle.daemon=true

org.gradle.configureondemand=true

android.enableBuildCache=true

android.useDeprecatedNdk=true

android.useAndroidX=true
android.enableJetifier=true
org.gradle.jvmargs=-Xmx2000m

75 changes: 8 additions & 67 deletions limbo-android-arm/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,83 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.limbo.emu.main.arm"
android:installLocation="auto"
android:versionCode="50100"
android:versionName="5.1.0-arm" >

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

<uses-feature android:glEsVersion="0x00020000" />
android:versionCode="60001"
android:versionName="6.0.1-arm">

<application
android:name="com.max2idea.android.limbo.main.LimboApplication"
android:allowBackup="true"
android:hardwareAccelerated="true"
android:icon="@drawable/limbo"
tools:replace="android:label"
android:label="Limbo ARM Emulator"
android:largeHeap="true" >
>
<activity
android:name=".LimboEmuActivity"
android:name="LimboEmuActivity"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:label="Limbo ARM"
android:launchMode="singleTask"
android:launchMode="singleTop"
android:theme="@style/Theme.AppCompat.NoActionBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.max2idea.android.limbo.main.LimboFileManager"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:label="File Manager" >
</activity>
<activity
android:name="com.max2idea.android.limbo.main.LimboSDLActivity"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:label="@string/app_name"
android:launchMode="singleTask"
android:theme="@style/Theme.AppCompat.NoActionBar" >
</activity>
<activity
android:name="com.max2idea.android.limbo.main.LimboVNCActivity"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:label="@string/app_name"
android:theme="@style/Theme.AppCompat.NoActionBar"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustPan" >
</activity>
<activity
android:name="com.max2idea.android.limbo.main.LimboSettingsManager"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:label="Settings" >
</activity>
<activity
android:name="com.max2idea.android.limbo.utils.LinksManager"
android:configChanges="mcc|mnc|locale|touchscreen|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize"
android:theme="@style/Theme.AppCompat.NoActionBar"
android:label="Downloads" >
</activity>
<service
android:name="com.max2idea.android.limbo.main.LimboService"
android:enabled="true"
android:exported="false"
android:label="Limbo Service" >
<intent-filter>
<action android:name="com.max2idea.android.limbo.action.STARTVM" />
</intent-filter>
</service>

</application>

</manifest>
Loading