Select to view content in your preferred language

localtiledlayer faster on android than .net

4316
5
Jump to solution
03-24-2015 01:13 PM
PaulYoum
Deactivated User

So first of all, my environment. I did not specify the localtiledlayer in my xaml markup because I have some underlying logic on how to best distinguish where my .tpk package will be sourced from. So I am explicitly setting the tiledlayer in a viewmodel sitting in C# code (don't know if this has any performance factors)

What really boggles me is that the same .tpk package, when the source tpk is coming from a local file, has better performance on an android (with lesser hardware specs) than my native .net application running on a tablet. And i'm not referring to loading speed, which isn't a concern. There is distinct lagginess and choppy frames when I move the map on my .net application.

Both interfaces are using touch interfaces.

So my question is if there are any reasons for this? Any tips and tricks to get my .net application to perform better? Is the fact that windows is intercepting my touch events causing a lag on the application? Or is this something related to my arcgis app? Graphically, I'm only drawing 60 points.

Advice?

0 Kudos
1 Solution

Accepted Solutions
MichaelBranscomb
Esri Frequent Contributor

Hi Paul,

Well the Android phone does is lower specced on paper but it is hard to compare them directly. Note that the CPU of your windows tablet does not meet our minimum recommended spec: System requirements—ArcGIS Runtime SDK for .NET | ArcGIS for Developers​. It is also worth checking for any graphics driver updates for your tablet.

Regarding your app, when you say touch events, are you listening for any additional events framework events or API events such as MapView.ExtentChanged? Are you doing anything to the 60 graphics, such as updating their geometry very frequently?

Cheers

Mike

View solution in original post

5 Replies
MichaelBranscomb
Esri Frequent Contributor

Hi Paul,


What are the specs of your devices?


Cheers


Mike

0 Kudos
PaulYoum
Deactivated User

Hi Michael,

The .net application is running on a 10" tablet with these specs:

Screen Size10.1 inches
Screen Resolution1366 x 768
Max Screen Resolution1366 x 768 pixels
Processor1.8 GHz Atom Z2760
RAM2 GB DDR3
Memory Speed 800 MHz
Hard Drive64 GB
Graphics Coprocessor

Intel® Graphics Media Accelerator

The android phone I was using was a typical Galaxy S3 phone:

  • System chip:
    • Samsung Exynos 4 (4412)
  • Processor:
    • Quad core, 1400 MHz, ARM Cortex-A9
  • Graphics processor:
      • ARM Mali-400/MP4
  • System memory:
    • 1024 MB RAM
  • Built-in storage:
    • 32 GB
  • Storage expansion:
    • microSD, microSDHC, microSDXC up to 64 GB
0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi Paul,

Well the Android phone does is lower specced on paper but it is hard to compare them directly. Note that the CPU of your windows tablet does not meet our minimum recommended spec: System requirements—ArcGIS Runtime SDK for .NET | ArcGIS for Developers​. It is also worth checking for any graphics driver updates for your tablet.

Regarding your app, when you say touch events, are you listening for any additional events framework events or API events such as MapView.ExtentChanged? Are you doing anything to the 60 graphics, such as updating their geometry very frequently?

Cheers

Mike

AnttiKajanus1
Deactivated User

Also make sure that you are running Release mode instead of Debug.

PaulYoum
Deactivated User

Hi Michael,

Thanks for your prompt responses. I didn't realize my hardware didn't meet the minimum specifications. Well I  guess FYI, it at least runs! (just not optimally).

Also, I am hooking into the WPF touch events, but only in a certain view/viewmodel that don't have any esri components on it. As for the 60 points, they're on a graphics layer. I'm having a bit of a hard time trying to distinguish how to set my graphics to be drawn dynamically as opposed to statically (don't know if there's actually a difference). But this is probably better reserved for another thread if I can't dig deep enough.

Thanks for the help!

0 Kudos