Codename One: understand warnings and SecurityException after upgrading from JDK23 to JDK27 - codenameone

On May 2018, Codename One was moved to Android API Level 27.
Previously I loaded in the store the version 0.1 of an app built with Codename One, with the Android API Level 23 (that was the previous default).
Google is forcing all its developers to upgrade the APPs to the newer API before the 1st November 2018, that's why I submitted to the store, few days ago, the same app, without any code modification, built with the last version of Codename One.
Today I received the following crash protection report. My question is an help to understand all the warnings and the java.lang.SecurityException. My app doesn't require any special permission and don't ask permissions to the user during the running (it's a very simple app). Before upgrading the app to the API Level 27 I never got these warnings and this exception.
[EDT] 0:0:0,1 - Codename One revisions: 38629bb7dc1724677b602b7cf175bee9bf0d67c8
[EDT] 0:0:0,4 - WARNING: Theme sets the commandBehavior constant which is deprecated. Please update the theme to NOT include this theme constant. Using commandBehavior may cause your app to perform in unexpected ways. In particular, using SIDE command behavior in conjunction with Toolbar.setOnTopSideMenu(true) may result in runtime exceptions.
[EDT] 0:0:0,6 - WARNING: Display.setCommandBehavior() is deprecated, Using it may result in unexpected behaviour. In particular, using COMMAND_BEHAVIOR_SIDE_NAVIGATION in conjunction with Toolbar.setOnTopSideMenu(true) may result in runtime errors.
[EDT] 0:0:0,11 - STARTING of the app "Giorno per giorno" version 0.2
[EDT] 0:0:0,12 - Platform: Unknown
[EDT] 0:0:0,13 - Platform Name: and
[EDT] 0:0:0,15 - OS: Android
[EDT] 0:0:0,17 - OS Version: 8.0.0
[EDT] 0:0:0,19 - Display Width: 1080
[EDT] 0:0:0,20 - Display Height: 2150
[EDT] 0:0:0,22 - Device density: DENSITY_HD
[EDT] 0:0:0,23 - mese: 10
[EDT] 0:0:0,24 - giorno del mese: 19
[EDT] 0:0:0,36 - I'm trying to open the file /giorno-293.txt
[EDT] 0:0:0,38 - File opened successfully
[EDT] 0:0:0,38 - isNativeShareSupported: true
[EDT] 0:0:0,874 - Exception: java.lang.SecurityException - Permission Denial: starting Intent { act=android.intent.action.MAIN flg=0x10400000 cmp=com.huawei.android.launcher/.powersavemode.PowerSaveModeLauncher (has extras) } from ProcessRecord{e69f9b7 13566:cloud.amoremio.app.daybyday/u0a110} (pid=13566, uid=10110) not exported from uid 10072
java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN flg=0x10400000 cmp=com.huawei.android.launcher/.powersavemode.PowerSaveModeLauncher (has extras) } from ProcessRecord{e69f9b7 13566:cloud.amoremio.app.daybyday/u0a110} (pid=13566, uid=10110) not exported from uid 10072
at android.os.Parcel.readException(Parcel.java:1946)
at android.os.Parcel.readException(Parcel.java:1892)
at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:4373)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1631)
at android.app.Activity.startActivityForResult(Activity.java:4751)
at android.app.Activity.startActivityForResult(Activity.java:4691)
at com.codename1.impl.android.CodenameOneActivity.startActivityForResult(CodenameOneActivity.java:576)
at android.app.Activity.startActivity(Activity.java:5112)
at android.app.Activity.startActivity(Activity.java:5080)
at com.codename1.impl.android.CodenameOneActivity.startActivity(CodenameOneActivity.java:590)
at com.codename1.impl.android.d.W(AndroidImplementation.java:1311)
at com.codename1.s.q.o(Display.java:1546)
at com.codename1.s.ab.c(MenuBar.java:1413)
at com.codename1.s.aj.c(SideMenuBar.java:704)
at com.codename1.s.u.c(Form.java:2748)
at com.codename1.s.q.a(Display.java:2015)
at com.codename1.s.q.j(Display.java:1043)
at com.codename1.s.q.i(Display.java:961)
at com.codename1.s.ai.run(RunnableWrapper.java:120)
at com.codename1.impl.b$1.run(CodenameOneThread.java:60)
at java.lang.Thread.run(Thread.java:784)
[EDT] 0:0:0,877 - Exception in Giorno per giorno version 0.2
[EDT] 0:0:0,877 - OS and
[EDT] 0:0:0,878 - Error java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN flg=0x10400000 cmp=com.huawei.android.launcher/.powersavemode.PowerSaveModeLauncher (has extras) } from ProcessRecord{e69f9b7 13566:cloud.amoremio.app.daybyday/u0a110} (pid=13566, uid=10110) not exported from uid 10072
[EDT] 0:0:0,878 - Current Form null
[EDT] 0:0:0,879 - Exception: java.lang.SecurityException - Permission Denial: starting Intent { act=android.intent.action.MAIN flg=0x10400000 cmp=com.huawei.android.launcher/.powersavemode.PowerSaveModeLauncher (has extras) } from ProcessRecord{e69f9b7 13566:cloud.amoremio.app.daybyday/u0a110} (pid=13566, uid=10110) not exported from uid 10072
java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN flg=0x10400000 cmp=com.huawei.android.launcher/.powersavemode.PowerSaveModeLauncher (has extras) } from ProcessRecord{e69f9b7 13566:cloud.amoremio.app.daybyday/u0a110} (pid=13566, uid=10110) not exported from uid 10072
at android.os.Parcel.readException(Parcel.java:1946)
at android.os.Parcel.readException(Parcel.java:1892)
at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:4373)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1631)
at android.app.Activity.startActivityForResult(Activity.java:4751)
at android.app.Activity.startActivityForResult(Activity.java:4691)
at com.codename1.impl.android.CodenameOneActivity.startActivityForResult(CodenameOneActivity.java:576)
at android.app.Activity.startActivity(Activity.java:5112)
at android.app.Activity.startActivity(Activity.java:5080)
at com.codename1.impl.android.CodenameOneActivity.startActivity(CodenameOneActivity.java:590)
at com.codename1.impl.android.d.W(AndroidImplementation.java:1311)
at com.codename1.s.q.o(Display.java:1546)
at com.codename1.s.ab.c(MenuBar.java:1413)
at com.codename1.s.aj.c(SideMenuBar.java:704)
at com.codename1.s.u.c(Form.java:2748)
at com.codename1.s.q.a(Display.java:2015)
at com.codename1.s.q.j(Display.java:1043)
at com.codename1.s.q.i(Display.java:961)
at com.codename1.s.ai.run(RunnableWrapper.java:120)
at com.codename1.impl.b$1.run(CodenameOneThread.java:60)
at java.lang.Thread.run(Thread.java:784)

This seems to be a bug in the Huawei launcher. When a user presses the back button in the applications main form we minimize the application by default (as is the convention in Android). The minimize method is implemented as such on Android:
public boolean minimizeApplication() {
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startMain.putExtra("WaitForResult", Boolean.FALSE);
getContext().startActivity(startMain);
return true;
}
This essentially asks the system to go back "home". It doesn't require permissions or anything specific but it seems Huawei misconfigured their activity and this fails. I think this just means backing out of the app on these devices will fail. The user can probably still use the home button itself instead of the back button.
Unfortunately it seems Huawei don't have a public bug reporting system. Hopefully they'll fix this issue or a workaround will emerge.

Related

Store version of UWP Package with a full trust process forms app keeps crashing on launch

I have a UWP app with a full trust win32 forms app bundled with it.
My project structure is like
UWP App
Win32 Forms App (.NET Framework 4.7.2)
Sync Library (.NET Framework 4.7.2) - referred by Forms App
Domain Library (.NET Standard 2.0) - referred by both UWP App and Sync Library.
When I get a release build through visual studio, it works fine. But when the same package is published to the store, app keeps crashing on launch. I tried adding crash logs by subscribing to the App.UnhandledException. But it is not being fired. Also in the store health report, It is just shown as "unknown".
On checking the error logs in Event viewer, there were two errors thrown for each crash which are listed below.
Source: .NET Runtime
Application: MyAppName.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: exception code e06d7363, exception address 00007FFB4D3DA859
Stack:
The other one is
Source: Application Error
Faulting application name: MyAppName.exe, version: 1.0.0.0, time stamp: 0x5e922c6f
Faulting module name: KERNELBASE.dll, version: 10.0.18362.752, time stamp: 0x2023e189
Exception code: 0xe0434352
Fault offset: 0x000000000003a859
Faulting process id: 0x2f4c
Faulting application start time: 0x01d6109e2c207537
Faulting application path: C:\Program Files\WindowsApps\AppPackageFullName_0.5.22.0_x64__krk5891pf20rj\MyAppName.exe
Faulting module path: C:\WINDOWS\System32\KERNELBASE.dll
Report Id: 6cdeefcb-e2cb-4b77-ae28-1c0b54fb41ff
Faulting package full name: AppPackageFullName_0.5.22.0_x64__krk5891pf20rj
Faulting package-relative application ID: App
Windows Error Report:
Version=1
EventType=MoAppCrash
EventTime=132311532032811137
ReportType=2
Consent=1
UploadTime=132311532035982658
ReportStatus=268435456
ReportIdentifier=0f767db9-4d2d-451f-acaa-efddb8b3225d
IntegratorReportIdentifier=67b702fb-992c-4ddf-b31e-eebfa70d328c
Wow64Host=34404
NsAppName=praid:App
OriginalFilename=MyAppName.exe
AppSessionGuid=000036c0-0001-01ab-f765-5d2aa310d601
TargetAppId=U:AppPackageFullName_0.5.22.0_x64__krk5891pf20rj!App
TargetAppVer=0.5.22.0_x64_!2020//04//11:20:45:35!0!MyAppName.exe
BootId=4294967295
ServiceSplit=1332998561
TargetAsId=1483
IsFatal=1
EtwNonCollectReason=4
Response.BucketId=d5c24af9f45a79f600894a99f9fb0fc3
Response.BucketTable=5
Response.LegacyBucketId=1191565601600638915
Response.type=4
Sig[0].Name=Package Full Name
Sig[0].Value=AppPackageFullName_0.5.22.0_x64__krk5891pf20rj
Sig[1].Name=Application Name
Sig[1].Value=praid:App
Sig[2].Name=Application Version
Sig[2].Value=1.0.0.0
Sig[3].Name=Application Timestamp
Sig[3].Value=5e922c6f
Sig[4].Name=Fault Module Name
Sig[4].Value=KERNELBASE.dll
Sig[5].Name=Fault Module Version
Sig[5].Value=10.0.18362.752
Sig[6].Name=Fault Module Timestamp
Sig[6].Value=2023e189
Sig[7].Name=Exception Code
Sig[7].Value=e0434352
Sig[8].Name=Exception Offset
Sig[8].Value=000000000003a859
DynamicSig[1].Name=OS Version
DynamicSig[1].Value=10.0.18362.2.0.0.256.48
DynamicSig[2].Name=Locale ID
DynamicSig[2].Value=16393
DynamicSig[22].Name=Additional Information 1
DynamicSig[22].Value=ab6f
DynamicSig[23].Name=Additional Information 2
DynamicSig[23].Value=ab6f94a45a680442bf911fba1b09d517
DynamicSig[24].Name=Additional Information 3
DynamicSig[24].Value=7e29
DynamicSig[25].Name=Additional Information 4
DynamicSig[25].Value=7e29e5215127ef7af2317cd3c1a7d6cf
UI[2]=C:\Program Files\WindowsApps\AppPackageFullName_0.5.22.0_x64__krk5891pf20rj\MyAppName.exe
LoadedModule[0]=C:\Program Files\WindowsApps\AppPackageFullName_0.5.22.0_x64__krk5891pf20rj\MyAppName.exe
LoadedModule[1]=C:\WINDOWS\SYSTEM32\ntdll.dll
LoadedModule[2]=C:\WINDOWS\SYSTEM32\MSCOREE.DLL
LoadedModule[3]=C:\WINDOWS\System32\KERNEL32.dll
LoadedModule[4]=C:\WINDOWS\System32\KERNELBASE.dll
LoadedModule[5]=C:\WINDOWS\System32\ADVAPI32.dll
LoadedModule[6]=C:\WINDOWS\System32\msvcrt.dll
LoadedModule[7]=C:\WINDOWS\System32\sechost.dll
LoadedModule[8]=C:\WINDOWS\System32\RPCRT4.dll
LoadedModule[9]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscoreei.dll
LoadedModule[10]=C:\WINDOWS\System32\SHLWAPI.dll
LoadedModule[11]=C:\WINDOWS\System32\combase.dll
LoadedModule[12]=C:\WINDOWS\System32\ucrtbase.dll
LoadedModule[13]=C:\WINDOWS\System32\bcryptPrimitives.dll
LoadedModule[14]=C:\WINDOWS\System32\GDI32.dll
LoadedModule[15]=C:\WINDOWS\System32\win32u.dll
LoadedModule[16]=C:\WINDOWS\System32\gdi32full.dll
LoadedModule[17]=C:\WINDOWS\System32\msvcp_win.dll
LoadedModule[18]=C:\WINDOWS\System32\USER32.dll
LoadedModule[19]=C:\WINDOWS\System32\IMM32.DLL
LoadedModule[20]=C:\WINDOWS\System32\kernel.appcore.dll
LoadedModule[21]=C:\WINDOWS\SYSTEM32\VERSION.dll
LoadedModule[22]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
LoadedModule[23]=C:\WINDOWS\SYSTEM32\ucrtbase_clr0400.dll
LoadedModule[24]=C:\WINDOWS\SYSTEM32\VCRUNTIME140_CLR0400.dll
LoadedModule[25]=C:\WINDOWS\System32\OLEAUT32.dll
LoadedModule[26]=C:\WINDOWS\System32\ole32.dll
LoadedModule[27]=C:\WINDOWS\System32\psapi.dll
LoadedModule[28]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\mscorlib\cea8b8fbc469dcbc6224d523a578e4b3\mscorlib.ni.dll
LoadedModule[29]=C:\WINDOWS\SYSTEM32\WinTypes.dll
LoadedModule[30]=C:\WINDOWS\System32\CRYPTSP.dll
LoadedModule[31]=C:\WINDOWS\system32\rsaenh.dll
LoadedModule[32]=C:\WINDOWS\System32\bcrypt.dll
LoadedModule[33]=C:\WINDOWS\SYSTEM32\CRYPTBASE.dll
LoadedModule[34]=C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clrjit.dll
LoadedModule[35]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Runtime\ecf16dcbbc95961331f8ec542cb7c3d9\System.Runtime.ni.dll
LoadedModule[36]=C:\WINDOWS\assembly\NativeImages_v4.0.30319_64\System.Runtbff93e24#\7fd43d0605b1366bc071e2bbdde312cf\System.Runtime.InteropServices.WindowsRuntime.ni.dll
LoadedModule[37]=C:\Windows\System32\MrmCoreR.dll
LoadedModule[38]=C:\WINDOWS\System32\shcore.dll
LoadedModule[39]=C:\WINDOWS\SYSTEM32\windows.staterepositorycore.dll
LoadedModule[40]=C:\WINDOWS\System32\profapi.dll
LoadedModule[41]=C:\Windows\System32\Windows.UI.dll
LoadedModule[42]=C:\WINDOWS\SYSTEM32\TextInputFramework.dll
LoadedModule[43]=C:\WINDOWS\SYSTEM32\InputHost.dll
LoadedModule[44]=C:\WINDOWS\SYSTEM32\CoreUIComponents.dll
LoadedModule[45]=C:\WINDOWS\SYSTEM32\CoreMessaging.dll
LoadedModule[46]=C:\WINDOWS\SYSTEM32\ntmarta.dll
LoadedModule[47]=C:\WINDOWS\SYSTEM32\PROPSYS.dll
LoadedModule[48]=C:\WINDOWS\SYSTEM32\bcp47mrm.dll
LoadedModule[49]=C:\WINDOWS\system32\uxtheme.dll
LoadedModule[50]=C:\Windows\System32\twinapi.appcore.dll
LoadedModule[51]=C:\WINDOWS\SYSTEM32\RMCLIENT.dll
State[0].Key=Transport.DoneStage1
State[0].Value=1
OsInfo[0].Key=vermaj
OsInfo[0].Value=10
OsInfo[1].Key=vermin
OsInfo[1].Value=0
OsInfo[2].Key=verbld
OsInfo[2].Value=18362
OsInfo[3].Key=ubr
OsInfo[3].Value=753
OsInfo[4].Key=versp
OsInfo[4].Value=0
OsInfo[5].Key=arch
OsInfo[5].Value=9
OsInfo[6].Key=lcid
OsInfo[6].Value=1033
OsInfo[7].Key=geoid
OsInfo[7].Value=113
OsInfo[8].Key=sku
OsInfo[8].Value=48
OsInfo[9].Key=domain
OsInfo[9].Value=1
OsInfo[10].Key=prodsuite
OsInfo[10].Value=256
OsInfo[11].Key=ntprodtype
OsInfo[11].Value=1
OsInfo[12].Key=platid
OsInfo[12].Value=10
OsInfo[13].Key=sr
OsInfo[13].Value=0
OsInfo[14].Key=tmsi
OsInfo[14].Value=468257
OsInfo[15].Key=osinsty
OsInfo[15].Value=1
OsInfo[16].Key=iever
OsInfo[16].Value=11.719.18362.0-11.0.180
OsInfo[17].Key=portos
OsInfo[17].Value=0
OsInfo[18].Key=ram
OsInfo[18].Value=32503
OsInfo[19].Key=svolsz
OsInfo[19].Value=169
OsInfo[20].Key=wimbt
OsInfo[20].Value=0
OsInfo[21].Key=blddt
OsInfo[21].Value=190318
OsInfo[22].Key=bldtm
OsInfo[22].Value=1202
OsInfo[23].Key=bldbrch
OsInfo[23].Value=19h1_release
OsInfo[24].Key=bldchk
OsInfo[24].Value=0
OsInfo[25].Key=wpvermaj
OsInfo[25].Value=0
OsInfo[26].Key=wpvermin
OsInfo[26].Value=0
OsInfo[27].Key=wpbuildmaj
OsInfo[27].Value=0
OsInfo[28].Key=wpbuildmin
OsInfo[28].Value=0
OsInfo[29].Key=osver
OsInfo[29].Value=10.0.18362.753.amd64fre.19h1_release.190318-1202
OsInfo[30].Key=buildflightid
OsInfo[30].Value=36b36b71-1da5-4320-8877-4d60bb3d78e6
OsInfo[31].Key=edition
OsInfo[31].Value=Professional
OsInfo[32].Key=ring
OsInfo[32].Value=Retail
OsInfo[33].Key=expid
OsInfo[34].Key=containerid
OsInfo[35].Key=containertype
OsInfo[36].Key=edu
OsInfo[36].Value=0
FriendlyEventName=Stopped working
ConsentKey=MoAppCrash
AppName=MyAppName
AppPath=C:\Program Files\WindowsApps\AppPackageFullName_0.5.22.0_x64__krk5891pf20rj\MyAppName.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=C9FF5F66D2724FC9A354189F5DB43763
MetadataHash=-1857492785
How to resolve this error?
Crash dump analysis with WinDbg
0:000> !analyze -v
*******************************************************************************
* *
* Exception Analysis *
* *
*******************************************************************************
*** WARNING: Unable to verify checksum for Bookmark It.exe
DEBUG_FLR_EXCEPTION_CODE(80070002) and the ".exr -1" ExceptionCode(e0434352) don't match
KEY_VALUES_STRING: 1
Key : Analysis.CPU.Sec
Value: 12
Key : Analysis.DebugAnalysisProvider.CPP
Value: Create: 8007007e on KUMAR-4031
Key : Analysis.DebugData
Value: CreateObject
Key : Analysis.DebugModel
Value: CreateObject
Key : Analysis.Elapsed.Sec
Value: 84
Key : Analysis.Memory.CommitPeak.Mb
Value: 147
Key : Analysis.System
Value: CreateObject
Key : CLR.Engine
Value: CLR
Key : CLR.System.IO.FileNotFoundException._fileName
Value: System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
Key : CLR.System.IO.FileNotFoundException._message
Value: Could not load file or assembly 'System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
Key : CLR.Version
Value: 4.0.30319.0
Key : Timeline.OS.Boot.DeltaSec
Value: 855
Key : Timeline.Process.Start.DeltaSec
Value: 2
ADDITIONAL_XML: 1
NTGLOBALFLAG: 0
PROCESS_BAM_CURRENT_THROTTLED: 0
PROCESS_BAM_PREVIOUS_THROTTLED: 0
APPLICATION_VERIFIER_FLAGS: 0
CONTEXT: (.ecxr)
rax=0000000000000003 rbx=00000000e0434352 rcx=00000043cf7fe890
rdx=00007ffc95c570f8 rsi=0000000000000001 rdi=0000000000000005
rip=00007ffca6d0a859 rsp=00000043cf7fee80 rbp=00000043cf7ff8c0
r8=00000043cf7fe8a0 r9=00000043cf7fe8e0 r10=00007ffc95c5869a
r11=0000000000000000 r12=0000000000004000 r13=0000000000000001
r14=00000043cf7ff018 r15=000001bdf2856820
iopl=0 nv up ei pl nz na po nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000206
KERNELBASE!RaiseException+0x69:
00007ffc`a6d0a859 0f1f440000 nop dword ptr [rax+rax]
Resetting default scope
EXCEPTION_RECORD: (.exr -1)
ExceptionAddress: 00007ffca6d0a859 (KERNELBASE!RaiseException+0x0000000000000069)
ExceptionCode: e0434352 (CLR exception)
ExceptionFlags: 00000001
NumberParameters: 5
Parameter[0]: ffffffff80070002
Parameter[1]: 0000000000000000
Parameter[2]: 0000000000000000
Parameter[3]: 0000000000000000
Parameter[4]: 00007ffc95c50000
PROCESS_NAME: Bookmark It.exe
EXCEPTION_CODE_STR: 80070002
MISSING_CLR_SYMBOL: 0
FAULTING_THREAD: ffffffff
STACK_TEXT:
00000000`00000000 00000000`00000000 Bookmark_It!unknown_function+0x0
SYMBOL_NAME: Bookmark_It!unknown_function
MODULE_NAME: Bookmark_It
IMAGE_NAME: Bookmark_It.exe
STACK_COMMAND: ** Pseudo Context ** ManagedPseudo ** Value: 1c6aeaf8000 ** ; kb
FAILURE_BUCKET_ID: CLR_EXCEPTION_System.IO.FileNotFoundException_80070002_Bookmark_It.exe!unknown_function
OS_VERSION: 10.0.18362.1
BUILDLAB_STR: 19h1_release
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
FAILURE_ID_HASH: {a5664d34-b1e3-4381-2c19-1c19445e489e}
Followup: MachineOwner
---------
I can't really make anything from the analysis.
MagicAndre1981 helped me in debugging the crash dump which revealed the error,
Could not load file or assembly 'System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified
As Microsoft store no longer accepts mixed package (UWP + Desktop) binaries, We have to wrap it in a Visual Studio packaging project.
After adding a visual studio packaging project to the solution, I added my UWP and desktop projects as references to it. Then I moved my appservice and full trust process manifest definitions from UWP to the new Package project's manifest. Refer here for more info.
After making these changes it worked!!
To debug such issues, you should generate a crash dump. To do this, you can use the Windows Error Reporting service of Windows.
To do this open regedit.exe, go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps key. Here you can create string DumpFolder to configure the location and the DWORD DumpType to configure the type. Here set the value to 2 for a full memory dump.
This configures global settings, to configure it per application use this location HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps\MyApplication.exe.
No, open the dump in Windbg.exe, which is part of Windows 10 SDK, configure the Debug symbols and run !analyze -v.
For pure UWP apps that show 0xC000027B error, you should use PDE.dll extension to debug it.

Codenameone: Android Build Failed with strange exception

Since today (28.03.) the build of my app (CN1 build server) throws an build Exception which I don't understand. The Build yesterday worked without an error. The error from the error-log:
Dex: The number of method references in a .dex file cannot exceed 64K.
Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536
at com.android.dx.merge.DexMerger$8.updateIndex(DexMerger.java:565)
at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:276)
at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:574)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:166)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:198)
at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:61)
at com.android.builder.dexing.DexArchiveMergerCallable.call(DexArchiveMergerCallable.java:36)
at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(ForkJoinTask.java:1424)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1689)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
:transformDexArchiveWithDexMergerForDebug FAILED
:transformDexArchiveWithDexMergerForDebug (Thread[Daemon worker,5,main]) completed. Took 0.334 secs.
FAILURE: Build failed with an exception.
Can anybody help me to understand what went wrong?
The error is:
Dex: The number of method references in a .dex file cannot exceed 64K.
In this case, add the build hint:
android.multidex=true
As written in the developer guide (link):
android.multidex -> Boolean true/false defaults to false. Multidex
allows Android binaries to reference more than 65536 methods. This
slows builds a bit so we have it off by default but if you get a build
error mentioning this limit you should turn this on.

How do I debug errors like this in Codenameone?

I have an app that works well on the simulator. I did an Android build and installed on a device. Now , several functionalities don't work. The debug log I receive contain several errors of this sort
[EDT] 0:23:31,275 - Exception in Ziemozi version 1.0
[EDT] 0:23:31,275 - OS and
[EDT] 0:23:31,275 - Error java.lang.NullPointerException: Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
[EDT] 0:23:31,276 - Current Form null
[EDT] 0:23:31,276 - Exception: java.lang.NullPointerException - Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.codename1.ab.l.n(int)' on a null object reference
at com.codename1.g.j.a(InfiniteScrollAdapter.java:156)
at com.codename1.g.j.a(InfiniteScrollAdapter.java:143)
at com.codename1.ab.aa.t(InfiniteContainer.java:177)
at com.codename1.ab.aa$5.run(InfiniteContainer.java:193)
at com.codename1.ab.r.n(Display.java:1298)
at com.codename1.ab.r.l(Display.java:1242)
at com.codename1.ab.r.k(Display.java:1130)
at com.codename1.ab.ao.run(RunnableWrapper.java:120)
at com.codename1.impl.b$1.run(CodenameOneThread.java:60)
How do I debug this or how does it arise so I can fix it?
This happens when one of the components returned from InfiniteContainer is null. E.g. you did something like:
public Component[] fetchComponents(int index, int amount);
// ...
return cmps;
}
cmps is a valid array that's bigger than 0 but one of its elements is null.

'amplify init' keeps failing

I recently got myself a new PC(Predator Helios 300) and I wanted to start using aws there but when I try to perform amplify init I get the error below even though I already did all the other steps such as configuration.
× Root stack creation failed
init failed
{ SignatureDoesNotMatch: Signature expired: 20190427T235724Z is now earlier than 20190428T094952Z (20190428T095452Z - 5 min.)
at Request.extractError (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\protocol\query.js:50:29)
at Request.callListeners (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\sequential_executor.js:106:20)
at Request.emit (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\sequential_executor.js:78:10)
at Request.emit (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\request.js:683:14)
at Request.transition (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\request.js:22:10)
at AcceptorStateMachine.runTo (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\state_machine.js:14:12)
at C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\state_machine.js:26:10
at Request.<anonymous> (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\request.js:38:9)
at Request.<anonymous> (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\request.js:685:12)
at Request.callListeners (C:\Users\sahve\AppData\Roaming\npm\node_modules\#aws-amplify\cli\node_modules\aws-sdk\lib\sequential_executor.js:116:18)
message:
'Signature expired: 20190427T235724Z is now earlier than 20190428T094952Z (20190428T095452Z - 5 min.)',
code: 'SignatureDoesNotMatch',
time: 2019-04-27T23:57:24.753Z,
requestId: 'ab179ef3-699b-11e9-bfe3-4ddc7ceb66ee',
statusCode: 403,
retryable: true }
After doing some research It seems to be a verification problem. Does anyone has experience with this or knows how to resolve this issue. Thanks a lot!
Any time you see an error like "is now earlier than" around some numbers that look like timestamps (20190427T235724Z -> 2019-04-27 23:57:24 UTC), that's an indicator that the error is time related. Time matters for cryptography in order to validate certificates (so that an attacker cannot break a certificate and use it after its expiration, among other reasons) [1]. In this case, either your clock or the remote server clock is wrongly set. Since the remote server in this case is AWS, it is highly unlikely that they have any significant clock drift, leaving you as the possible outlier.
Given that you mentioned a new computer, it is even more likely that this is due to an incorrectly set system clock.
Reset/synchronize your system clock and the error should disappear.
Reference [1]: https://security.stackexchange.com/q/72866/47422

Unable to run application outside of Visual Studio

Our .Net 4.0 app that runs normally while hosted by VS always crashes while loading (less than 1 second after executing) while not debugging (both debug and release binaries).
The app contains 5 libraries (all of it with .Net 4.0) + NHibernate dependencies.
It does not even fire the UnhandledException event, it just crashes right away with a OutOfMemoryException (I could only see that with the Windows Event Viewer).
Event Viewer tells me that kernelbase.dll had a OutOfMemoryException, and
Fuslogvw.exe tells me that System.Core fails to load:
*** Input Assembly Binder Log (6/27/2016 # 15:41:54) ***
The operation failed.
Result of the Association: hr = 0x8007000e. Insufficient storage space to complete the operation.
Assembly Manager loaded from: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
Running under executable C:\Users\User\Source\Manager\MySoftware\MySoftware.WPF.App\bin\Release\MySoftware.WPF.App.exe
---Follows a detailed log of errors.
=== Pre-Association state information ===
LOG: DisplayName = System.Core, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089
(Fully-specified)
LOG: Appbase = file:///C:/Users/User/Source/Manager/MySoftware/MySoftware.WPF.App/bin/Release/
LOG: initial PrivatePath = NULL
Logging: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = MySoftware.WPF.App.exe
Calling assembly: MySoftware.WPF. App, Version 1.0.0.0, Culture = neutral, PublicKeyToken = null.
===
LOG: this Association starts at the default load context.
LOG: using application configuration file: C:\Users\User\Source\Manager\MySoftware\MySoftware.WPF.App\bin\Release\MySoftware.WPF.App.exe.Config
LOG: using host configuration file:
LOG: using machine configuration file C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.
LOG: post policy reference: System.Core, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089
LOG: assembly located by searching on GAC.
ERR: unrecoverable error during pre download verification (hr = 0x8007000e).
I have 4GB of RAM with 60% occupied, so maybe that's not the problem. Can you give me a hint where to look?

Resources