Can we tell if the application was executed using a telephone or similar cross-platform system?

When I load the app, is it possible to determine if the app was built via cross platform instead of native?

Will there be noticeable performance differences between native and a (I don't know the right word to call it) built into the web interface?

+3


source to share


3 answers


You can take any file APK

or IPA

and change the file extension to ZIP

. From there, you can unzip the package and look for mash-up signs. Most notable will be a folder www

with multiple JS / HTML / CSS files.



If you can't find it is a fair assumption that the app is native and not hybrid or HTML5 based.

+4


source


A native app is a native language coded app with an Objective C device for iOS, for example.

The mobile web app is built with web technologies (HTML, CSS, JavaScript) using a framework like Sencha Touch.

The hybrid app falls somewhere in between the two. For example, a Sencha Touch app using PhoneGap would be considered a hybrid app. Web technologies were used, but PhoneGap gives us access to native APIs that we would not have access to otherwise - thus it is a hybrid of native and web.

Main applications

Pro: a) Native apps have the best performance and use the latest available hardware resource to improve performance.
b) Applications will work offline.
c) Apps are distributed through App Store platforms, providing better visibility to potential users.
d) Your application will have access to the latest API releases on that platform.
e) Applications are built in languages ​​supported by the platform and therefore have access to IDEs that provide the best development tools, quickly debug the project. An iOS app can be built in a C object in Xcode, which has all the tools for debugging, front-end development, and performance testing with tools, etc.
f) Linkedin is one example ported to Native from HTML5.
g) And there is Facebook, which has gone U-turn.

Cons: a) You need huge budgets to support all platforms with significant markets. You will need to support multiple teams, one team per platform that you want to support. Thus, each team will reproduce the same functionality on their platform.
b) Application updates have to be downloaded by users, so you end up maintaining multiple versions of applications on your web server if not developed properly.
c) The availability of developers for extensibility is another issue. When Objective C suddenly came to life after the iPhone was released, there weren't enough good developers. Maybe developers can be trained, but this is not possible for companies with small and medium ratings, and even in large companies where training is possible, trained developers will not be at the same level of knowledge as the technologies they work with.

HTML 5 Mobile Web App: -

Pro: a) The HTML5 mobile app is similar to a regular web app, except that they are designed to run on smaller screens.
b) The distribution of these applications is very easy. You simply deploy a web application to your web server and users can access it from their browsers.
c) There are very good mobile UIs such as jQuery Mobile, Sencha Touch and of course my favorite mgwt which provides several widgets for mobile devices.
d) These applications can possibly cover all platforms as they run in browsers and all modern smartphones have a browser.
e) Developing and testing these applications is easier because they are like regular web applications where you have tooling support.



Cons: f) These applications do not have access to their own functionality.
g) Performance does not match native applications.
h) These apps do not work offline. Actually works offline, but it doesn't match what native apps provide.

Hybrid Applications: -

Pro: a) Hybrid apps evolve faster as most of the development is done, it is web technologies that are cross-platform and have very little native coding only when access to native layers is required. Thus, only a small portion of the code needs to be reimplemented for other platforms. This saves development time and cost, and you can focus on developing new features rather than repeating the same features on every platform.
b) You're next to "Write Once, Run Anywhere", the strategy that made Java such a dominant force.
c) The tools for building mashups are not mature enough compared to their native counterparts. This is rapidly changing and there may soon be some good tools that support cross-platform mashup development.
d) These applications can be deployed to specialized application stores.
e) Hybrid apps provide good and bad for both native apps and HTML5 web apps.
f) They can access native layers.
g) These applications can work offline.
h) Netflix is ​​one cool example that uses the same codebase for all devices.
i) Gartner predicts over 50% of deployments will be mashups by 2016.

Cons: a) Hybrid apps, even if packaged natively, are not native apps. They run on the platform's web engine, Webkit in the case of Android and iOS, which is another layer between the user and the app, so the performance doesn't match native apps.
b) Since mashups are usually built using standard web technologies, there can be a huge pool of developers to extend. This does not apply to native apps.

Whether you are building productivity apps, utility apps, or enterprise apps, mashups are for you.

If you create games or photos, a video related application, then popular applications.

If you are building applications that need to run in real time, that don't need access to their own layer and are not stressed, then html5 web applications are the way to go.

So, a solution needs to be followed depending on what type of application you are building, what the development cost is and the time that may be offered.

+5


source


You should be able to tell while playing with the app. Cross-platform solutions look and feel like a web page. They are often lethargic and can be unresponsive (like a web page). Moving between pages takes time to load and uses a counter frequently. Native apps tend to transition instantly, or at least have animation. Android has things like context menus and action bar that are often not used in web type implementations.

0


source







All Articles