Skip to content

Commit

Permalink
Merge pull request #55 from fiskaltrust/user/tsc/55318-android-12
Browse files Browse the repository at this point in the history
Upgraded target framework to Android 12
  • Loading branch information
TSchmiedlechner committed Jan 13, 2023
2 parents 037e47e + 9855f7c commit 02fae78
Show file tree
Hide file tree
Showing 8 changed files with 83 additions and 6 deletions.
2 changes: 1 addition & 1 deletion azure-pipelines/middleware-launcher-android-ci-cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ stages:

- job: SmokeTest
dependsOn: Build
condition: and(succeeded(), or(eq(variables['build.sourceBranch'], 'refs/heads/master'), startsWith(variables['build.sourceBranch'], 'refs/tags')))
condition: and(succeeded(), or(eq(variables['RunSmokeTests'], 'true'), or(eq(variables['build.sourceBranch'], 'refs/heads/master'), startsWith(variables['build.sourceBranch'], 'refs/tags'))))
steps:
- task: DownloadPipelineArtifact@2
inputs:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ private static Notification GetNotification(LauncherState state, bool enableClos
Intent intent = new Intent(BroadcastConstants.StopBroadcastName);
intent.SetPackage(Application.Context.PackageName);

PendingIntent pendingIntent = PendingIntent.GetBroadcast(Application.Context, 0, intent, 0);
PendingIntent pendingIntent = PendingIntent.GetBroadcast(Application.Context, 0, intent, PendingIntentFlags.Immutable);

builder.AddAction(Android.Resource.Drawable.IcMenuCloseClearCancel, "Stop Service", pendingIntent);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
using Android.App;
using Android.Content;
using Android.OS;
using fiskaltrust.AndroidLauncher.Common.AndroidService;
using fiskaltrust.AndroidLauncher.Common.Constants;
using fiskaltrust.AndroidLauncher.Common.Extensions;
using fiskaltrust.AndroidLauncher.Common.Helpers;
using fiskaltrust.AndroidLauncher.Common.Services;
using Microsoft.Extensions.Logging;
using System;

Expand All @@ -21,6 +23,45 @@ public override void OnReceive(Context context, Intent intent)
var enableCloseButton = intent.GetBooleanExtra("enableCloseButton", false);
var logLevel = Enum.TryParse(intent.GetStringExtra("loglevel"), out LogLevel level) ? level : LogLevel.Information;
var scuParams = intent.GetScuConfigParameters();

if (StateProvider.Instance.CurrentValue.CurrentState == State.Error)
{
MiddlewareLauncherService.Stop<MiddlewareLauncherGrpcService>();
}

using var bundle = new Bundle();
bundle.PutString("cashboxid", cashboxId);
bundle.PutString("accesstoken", accessToken);
bundle.PutBoolean("sandbox", isSandbox);
bundle.PutString("loglevel", logLevel.ToString());
bundle.PutBoolean("enableCloseButton", enableCloseButton);
foreach (var extra in scuParams)
{
bundle.PutString(extra.Key, extra.Value.ToString());
}

using var alarmIntent = new Intent(Application.Context, typeof(GrpcAlarmReceiver));
alarmIntent.PutExtras(bundle);

var pending = PendingIntent.GetBroadcast(Application.Context, 0, alarmIntent, PendingIntentFlags.UpdateCurrent | PendingIntentFlags.Immutable);

var alarmManager = (AlarmManager)Application.Context.GetSystemService(Context.AlarmService);
alarmManager.SetExact(AlarmType.ElapsedRealtime, SystemClock.ElapsedRealtime() + 100, pending);
}
}

[BroadcastReceiver]
public class GrpcAlarmReceiver : BroadcastReceiver
{
public override void OnReceive(Context context, Intent intent)
{
var cashboxId = intent.GetStringExtra("cashboxid");
var accessToken = intent.GetStringExtra("accesstoken");
var isSandbox = intent.GetBooleanExtra("sandbox", false);
var enableCloseButton = intent.GetBooleanExtra("enableCloseButton", false);
var logLevel = Enum.TryParse(intent.GetStringExtra("loglevel"), out LogLevel level) ? level : LogLevel.Information;
var scuParams = intent.GetScuConfigParameters();

MiddlewareLauncherService.Start<MiddlewareLauncherGrpcService>(cashboxId, accessToken, isSandbox, logLevel, scuParams, enableCloseButton);
PowerManagerHelper.AskUserToDisableBatteryOptimization(context);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="eu.fiskaltrust.androidlauncher.grpc" android:installLocation="auto">
<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="30" />
<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="31" />
<application android:allowBackup="true" android:manageSpaceActivity="eu.fiskaltrust.androidlauncher.common.ManageSpaceActivity" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme" android:extractNativeLibs="true"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
</manifest>
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<AndroidResgenClass>Resource</AndroidResgenClass>
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v11.0</TargetFrameworkVersion>
<TargetFrameworkVersion>v12.0</TargetFrameworkVersion>
<AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
using Android.App;
using Android.Content;
using Android.OS;
using fiskaltrust.AndroidLauncher.Common.AndroidService;
using fiskaltrust.AndroidLauncher.Common.Constants;
using fiskaltrust.AndroidLauncher.Common.Extensions;
Expand Down Expand Up @@ -28,6 +29,39 @@ public override void OnReceive(Context context, Intent intent)
MiddlewareLauncherService.Stop<MiddlewareLauncherHttpService>();
}

using var bundle = new Bundle();
bundle.PutString("cashboxid", cashboxId);
bundle.PutString("accesstoken", accessToken);
bundle.PutBoolean("sandbox", isSandbox);
bundle.PutString("loglevel", logLevel.ToString());
bundle.PutBoolean("enableCloseButton", enableCloseButton);
foreach (var extra in scuParams)
{
bundle.PutString(extra.Key, extra.Value.ToString());
}

using var alarmIntent = new Intent(Application.Context, typeof(HttpAlarmReceiver));
alarmIntent.PutExtras(bundle);

var pending = PendingIntent.GetBroadcast(Application.Context, 0, alarmIntent, PendingIntentFlags.UpdateCurrent | PendingIntentFlags.Immutable);

var alarmManager = (AlarmManager)Application.Context.GetSystemService(Context.AlarmService);
alarmManager.SetExact(AlarmType.ElapsedRealtime, SystemClock.ElapsedRealtime() + 100, pending);
}
}

[BroadcastReceiver]
public class HttpAlarmReceiver : BroadcastReceiver
{
public override void OnReceive(Context context, Intent intent)
{
var cashboxId = intent.GetStringExtra("cashboxid");
var accessToken = intent.GetStringExtra("accesstoken");
var isSandbox = intent.GetBooleanExtra("sandbox", false);
var enableCloseButton = intent.GetBooleanExtra("enableCloseButton", false);
var logLevel = Enum.TryParse(intent.GetStringExtra("loglevel"), out LogLevel level) ? level : LogLevel.Information;
var scuParams = intent.GetScuConfigParameters();

MiddlewareLauncherService.Start<MiddlewareLauncherHttpService>(cashboxId, accessToken, isSandbox, logLevel, scuParams, enableCloseButton);
PowerManagerHelper.AskUserToDisableBatteryOptimization(context);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="eu.fiskaltrust.androidlauncher.http" android:installLocation="auto">
<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="30" />
<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="31" />
<application android:allowBackup="true" android:manageSpaceActivity="eu.fiskaltrust.androidlauncher.common.ManageSpaceActivity" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme" android:extractNativeLibs="true" android:usesCleartextTraffic="true"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
<uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
</manifest>
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<AndroidResgenClass>Resource</AndroidResgenClass>
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
<AndroidUseLatestPlatformSdk>false</AndroidUseLatestPlatformSdk>
<TargetFrameworkVersion>v11.0</TargetFrameworkVersion>
<TargetFrameworkVersion>v12.0</TargetFrameworkVersion>
<AndroidManifest>Properties\AndroidManifest.xml</AndroidManifest>
<MonoAndroidResourcePrefix>Resources</MonoAndroidResourcePrefix>
<MonoAndroidAssetsPrefix>Assets</MonoAndroidAssetsPrefix>
Expand Down

0 comments on commit 02fae78

Please sign in to comment.