mirror of
https://github.com/love2d/love-android.git
synced 2026-08-12 00:20:57 +02:00
Merge tag '11.5a' into 12.x-testmerge
This commit is contained in:
@@ -14,7 +14,7 @@ jobs:
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: true
|
||||
- name: Setup Java 11
|
||||
- name: Setup Java 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: adopt-hotspot
|
||||
@@ -47,3 +47,8 @@ jobs:
|
||||
with:
|
||||
name: love-android-embed.aab
|
||||
path: app/build/outputs/bundle/embedNoRecordRelease/app-embed-noRecord-release.aab
|
||||
- name: Artifact (Debug symbols)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: love-android-unstripped-debugsyms
|
||||
path: love/build/intermediates/library_jni
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Android Port of LÖVE, an awesome 2D game engine for Lua (http://love2d.org)
|
||||
Copyright (c) 2006-2023 LOVE Development Team
|
||||
|
||||

|
||||

|
||||
|
||||
Download:
|
||||
---------
|
||||
@@ -38,32 +38,32 @@ Detailed instructions can be viewed at https://github.com/love2d/love-android/wi
|
||||
Quick Start:
|
||||
------------
|
||||
|
||||
Before you start, install JDK 11 or later. If you intend to build from Android Studio, skip this step as
|
||||
Android Studio bundles its own JDK 11.
|
||||
Before you start, install JDK 17 (not later not earlier). If you intend to build from Android Studio, skip this step as
|
||||
Android Studio bundles its own JDK 17.
|
||||
|
||||
Install CMake version 3.21 or later in your system. Install Android SDK with SDK API 33 (33.0.0) and Android NDK 25.2.9519653.
|
||||
Set the environment variables `ANDROID_SDK_ROOT` to your Android SDK location if necessary and run.
|
||||
Install CMake version 3.21 or later in your system. Install Android SDK with SDK API 34 (34.x.y) and Android NDK
|
||||
25.2.9519653, set the environment variable `ANDROID_HOME` to your Android SDK as necessary then run.
|
||||
|
||||
```
|
||||
$ ./gradlew assembleNormalRecord
|
||||
```
|
||||
|
||||
in the root folder of this project. This should give you a .apk file in the `app/build/outputs/apk/normalRecord`
|
||||
subdirectory that you can then sign and install on your phone. The `normalRecord` .apk flavor is what you normally have
|
||||
when downloading one from https://love2d.org.
|
||||
in the root folder of this project. This should give you an .apk file in the `app/build/outputs/apk/normalRecord`
|
||||
subdirectory that you can then sign and install on your phone. The `normalRecord` .apk variant is what you normally have
|
||||
when downloading APK from https://love2d.org.
|
||||
|
||||
If you want to put your game inside the APK, you can either:
|
||||
|
||||
1. Put all your games in `app/src/embed/assets` such that your `main.lua` path is `app/src/embed/assets/main.lua`; or
|
||||
2. Put your zipped \*.love in `app/src/embed/assets` with name `game.love`
|
||||
|
||||
And change the package name, application version string and codes, application display name, and the icons (see
|
||||
And change the application id, application version string and codes, application display name, and the icons (see
|
||||
[Game Packaging Wiki](https://github.com/love2d/love-android/wiki/Game-Packaging). Afterwards,
|
||||
run either `gradlew assembleEmbedNoRecordRelease` (or `gradlew assembleEmbedRecordRelease` if your game uses microphone) to
|
||||
generate APK which you can install or `gradlew bundleEmbedNoRecordRelease` (or `gradlew bundleEmbedRecordRelease`) to generate
|
||||
AAB which you can upload to Play Store.
|
||||
|
||||
Alternatively, you can install Android Studio **2022.1.1** or later. After opening it for the first time, open its SDK Manager
|
||||
Alternatively, you can install Android Studio **2022.3.1** or later. After opening it for the first time, open its SDK Manager
|
||||
and on the tab "SDK Tools", tick "Show Package Details" then select NDK (Side By Side) version 25.2.9519653. After that, open
|
||||
the repository root.
|
||||
|
||||
@@ -76,9 +76,17 @@ Bugs and/or feature requests should be reported to the issue tracker at:
|
||||
* https://github.com/love2d/love-android/issues - LÖVE-Android-specific issues
|
||||
* https://github.com/love2d/love/issues - for LÖVE in general
|
||||
|
||||
Note: If in doubt, fill an issue report to https://github.com/love2d/love/issues. We'll transfer the issue to this repository as needed.
|
||||
|
||||
Changelog:
|
||||
----------
|
||||
|
||||
11.5:
|
||||
|
||||
* Contains all relevant changes for desktop LÖVE [11.5](https://love2d.org/wiki/11.5).
|
||||
* Fixed audio in Android still playing in the background in certain cases. ([love2d/love#1828](https://github.com/love2d/love/issues/1828))
|
||||
|
||||
|
||||
11.4:
|
||||
|
||||
* Contains all relevant changes for desktop LÖVE [11.4](https://love2d.org/wiki/11.4).
|
||||
|
||||
+1
-1
@@ -172,7 +172,7 @@ dependencies {
|
||||
implementation 'com.google.oboe:oboe:1.7.0'
|
||||
}
|
||||
|
||||
// We don't even use Kotlin. Why we have to suffer...
|
||||
// We don't even use Kotlin. Why we have to care about it?
|
||||
configurations.implementation {
|
||||
exclude group: 'org.jetbrains.kotlin', module: 'kotlin-stdlib-jdk8'
|
||||
}
|
||||
|
||||
@@ -1,60 +1,60 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.BLUETOOTH" />
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
||||
|
||||
<!-- OpenGL ES 2.0 -->
|
||||
<uses-feature android:glEsVersion="0x00020000" />
|
||||
<!-- Touchscreen support -->
|
||||
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
|
||||
<!-- Game controller support -->
|
||||
<uses-feature android:name="android.hardware.bluetooth" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.gamepad" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.usb.host" android:required="false" />
|
||||
<!-- External mouse input events -->
|
||||
<uses-feature android:name="android.hardware.type.pc" android:required="false" />
|
||||
<!-- Low latency audio -->
|
||||
<uses-feature android:name="android.hardware.audio.low_latency" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.audio.pro" android:required="false" />
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:icon="@drawable/love"
|
||||
android:label="${NAME}">
|
||||
<!-- You don't have to change the activity class unless you have special needs! !-->
|
||||
<activity
|
||||
android:name="org.love2d.android.GameActivity"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
|
||||
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboard|keyboardHidden|navigation"
|
||||
android:launchMode="singleInstance"
|
||||
android:screenOrientation="${ORIENTATION}">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
<category android:name="tv.ouya.intent.category.GAME" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".IntentReceiverActivity"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.Translucent.NoTitleBar"
|
||||
android:taskAffinity=""
|
||||
android:excludeFromRecents="true"
|
||||
android:relinquishTaskIdentity="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.SEND" />
|
||||
<category android:name="android.intent.category.OPENABLE" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<data android:mimeType="*/*" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.BLUETOOTH" />
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
||||
|
||||
<!-- OpenGL ES 2.0 -->
|
||||
<uses-feature android:glEsVersion="0x00020000" />
|
||||
<!-- Touchscreen support -->
|
||||
<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
|
||||
<!-- Game controller support -->
|
||||
<uses-feature android:name="android.hardware.bluetooth" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.gamepad" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.usb.host" android:required="false" />
|
||||
<!-- External mouse input events -->
|
||||
<uses-feature android:name="android.hardware.type.pc" android:required="false" />
|
||||
<!-- Low latency audio -->
|
||||
<uses-feature android:name="android.hardware.audio.low_latency" android:required="false" />
|
||||
<uses-feature android:name="android.hardware.audio.pro" android:required="false" />
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:icon="@drawable/love"
|
||||
android:label="${NAME}">
|
||||
<!-- You don't have to change the activity class unless you have special needs! !-->
|
||||
<activity
|
||||
android:name="org.love2d.android.GameActivity"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
|
||||
android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboard|keyboardHidden|navigation"
|
||||
android:launchMode="singleInstance"
|
||||
android:screenOrientation="${ORIENTATION}">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
<category android:name="tv.ouya.intent.category.GAME" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".IntentReceiverActivity"
|
||||
android:exported="true"
|
||||
android:theme="@android:style/Theme.Translucent.NoTitleBar"
|
||||
android:taskAffinity=""
|
||||
android:excludeFromRecents="true"
|
||||
android:relinquishTaskIdentity="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.SEND" />
|
||||
<category android:name="android.intent.category.OPENABLE" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<data android:mimeType="*/*" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
</manifest>
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove" />
|
||||
</manifest>
|
||||
@@ -1,46 +1,46 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<application android:icon="@drawable/love">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:theme="@style/Theme.AppCompat.DayNight">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!--
|
||||
Important: GameActivity class name MUST be explicitly written as
|
||||
"org.love2d.android.GameActivity" without any shortcuts.
|
||||
-->
|
||||
<activity
|
||||
android:name="org.love2d.android.GameActivity"
|
||||
android:exported="false"
|
||||
tools:replace="android:exported">
|
||||
<intent-filter tools:node="removeAll" />
|
||||
<intent-filter>
|
||||
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".AboutActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName=".MainActivity"
|
||||
android:theme="@style/Theme.AppCompat.DayNight" />
|
||||
<provider
|
||||
android:name="org.love2d.android.LoveDocumentsProvider"
|
||||
android:authorities="${applicationId}.documents"
|
||||
android:exported="true"
|
||||
android:grantUriPermissions="true"
|
||||
android:permission="android.permission.MANAGE_DOCUMENTS">
|
||||
<intent-filter>
|
||||
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
|
||||
</intent-filter>
|
||||
</provider>
|
||||
</application>
|
||||
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<application android:icon="@drawable/love">
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTop"
|
||||
android:theme="@style/Theme.AppCompat.DayNight">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!--
|
||||
Important: GameActivity class name MUST be explicitly written as
|
||||
"org.love2d.android.GameActivity" without any shortcuts.
|
||||
-->
|
||||
<activity
|
||||
android:name="org.love2d.android.GameActivity"
|
||||
android:exported="false"
|
||||
tools:replace="android:exported">
|
||||
<intent-filter tools:node="removeAll" />
|
||||
<intent-filter>
|
||||
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".AboutActivity"
|
||||
android:exported="false"
|
||||
android:parentActivityName=".MainActivity"
|
||||
android:theme="@style/Theme.AppCompat.DayNight" />
|
||||
<provider
|
||||
android:name="org.love2d.android.LoveDocumentsProvider"
|
||||
android:authorities="${applicationId}.documents"
|
||||
android:exported="true"
|
||||
android:grantUriPermissions="true"
|
||||
android:permission="android.permission.MANAGE_DOCUMENTS">
|
||||
<intent-filter>
|
||||
<action android:name="android.content.action.DOCUMENTS_PROVIDER" />
|
||||
</intent-filter>
|
||||
</provider>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
+1
-1
@@ -8,7 +8,7 @@ app.name_byte_array=76,195,150,86,69,32,102,111,114,32,65,110,100,114,111,105,10
|
||||
|
||||
app.application_id=org.love2d.android
|
||||
app.orientation=landscape
|
||||
app.version_code=32
|
||||
app.version_code=33
|
||||
app.version_name=12.0
|
||||
|
||||
# No need to modify anything past this line!
|
||||
|
||||
Reference in New Issue
Block a user