What exactly are the streaming applications we often talk about?

Streaming application is a technology developed by DCloud that allows mobile app installation packages to be used and downloaded at the same time. Click-to-use applications based on HTML5+ specifications. Applications developed by developers in accordance with HTML5+ specifications can achieve click-to-use effects in distribution channels that support HTML5+ streaming applications.

Streaming applications are click-to-use applications based on HTML5+ specifications. Applications developed by developers in accordance with HTML5+ specifications can support HTML5+ streaming The distribution channel of the application achieves click-and-use effect.

streaming applications

Streaming application is a technology developed by DCloud that allows mobile app installation packages to be downloaded while being used. Using the dynamic language features of js, the installation package of the mobile app is disassembled and streamed to the mobile phone. Just like streaming media can be watched and downloaded at the same time, streaming applications can also be used and downloaded at the same time. Supplemented by special compression and decoding technology, the streaming application can complete the entire process of downloading, installing, and launching the App within 5 seconds.

DCloud streaming application engine is an enhanced js engine based on HTM5+ technology. It first greatly enhances H5, allowing js to call 400,000 native capabilities, and greatly improves the performance experience of H5. After enhancement, streaming applications developed based on HTML5+ can meet the standards of native applications.

While using and downloading relies on the support of dynamic languages, the client installation package of the streaming application is written using dynamic languages ​​​​such as HTML and JS. However, in order to ensure that the functions and experience of the App are still native, an enhanced js engine, this engine called HTML5+ can enable js to call hundreds of thousands of native APIs, including offline use, local device capability calls, and enhanced rendering engines, so that streaming applications still have the same functions and experience as native ones.

The offline capability of streaming applications is not web caching, but native storage. The cache will not be cleared by third-party cleaning software, causing streaming applications to become invalid. Streaming applications combine the advantages of native Apps and Web Apps, and eliminate their respective shortcomings. Although it has a good c/s structure, it also allows the client to update every second. It is a more advanced form of mobile Internet App.

Streaming applications can be opened instantly without downloading and installation. They can be guaranteed to run offline and use all native capabilities. Streaming applications are similar to streaming media. When the application is installed for the first time, the programs and related resources on the homepage are dynamically downloaded, the homepage of the app is quickly opened, and subsequent programs are continuously downloaded, and can be run offline from the local machine next time.

On the premise that the functions and experience are close to those of native apps, streaming apps have six major features that even native apps cannot match:

1. In the past, obtaining an App required a process of downloading, installing, and starting it, which took at least one minute and several clicks. The streaming application can complete the entire process in 5 seconds. In the past, the activation rate of apps from download to activation was less than 50%, while the activation rate of streaming apps was over 95%.

2. The package size of streaming applications is reduced to 10% compared to native apps. Installing thousands of streaming applications will not cause the phone to become stuck or consume electricity.

3. Streaming application update is an automatic differential update when in use. Generally, each update consumes about a few K of traffic. Streaming applications can be easily shared via social networks.

4. You can easily enter the content page of the App and realize various new marketing methods such as search direct purchase, scan direct purchase, share direct purchase and so on.

5. The streaming application is based on HTML5 and uses DCloud's MUI framework to develop streaming applications, which can be automatically compatible with multiple platforms.

An important prerequisite for streaming applications is that the functions and experience must be good enough to achieve the effects of native apps. In the past, there were HTML5 enhanced engines or hybrid solutions in the industry, such as phonegap/cordova, but their functionality and performance were still far from native applications. HTML5+ has achieved this. Problems such as form switching, long list scrolling, pull-down refresh, large-capacity tab switching, etc. that are ineffective in traditional HTML5 have been solved. The experience is smooth and it is difficult for users to perceive the difference from the native version. Moreover, the HTML5+ enhanced engine allows js to call hundreds of thousands of native APIs, and various native APIs such as scanning, shaking, turning Bluetooth on and off, and obtaining IMEI can be used at will.

■ Summary of streaming applications ■

A streaming application is a real-time application that exchanges data in the form of streams in real time. The main difference from web applications is that streaming applications generally do not require users to send HTTP requests and data can be sent in a continuous manner.

Streaming applications typically use a specific protocol to transmit data, such as HTTP streaming, WebSocket, or TCP. Many streaming applications use persistent connections to improve performance because they do not need to re-establish the connection every time data is transferred.

This approach provides more flexibility to developers so that they can interact with clients from different domains, such as multimedia applications, social networking applications, and virtual reality applications, etc.

Developers can use streaming applications for a number of different purposes, including real-time messaging to clients, transaction processing, streaming content delivery, visual multimedia content delivery, social network management, streaming application management, and machine learning and deep learning Study and so on.

For example, streaming applications can be used to update trading information in real time, such as in the stock market. Using streaming applications enables low-latency real-time interactions and significantly improves the client experience.

Furthermore, unlike traditional web applications, streaming applications enable developers to build applications that are lighter and more scalable because they use fewer steps to complete a task, basically, they can do it quickly Build powerful applications and push messages and content in a simpler, more efficient way.

Because they are designed to provide real-time, valid information, streaming applications have a wide range of applications and are becoming increasingly popular in areas such as financial data and media videos. In fact, in recent years, streaming applications have been constantly evolving and continuing to grow, becoming the basis of many application areas, especially mobile application development and Internet application development.


☀ Extra: About HTML5 and HTML5+

HTML5

It’s HTML5 in the traditional sense. The latest HTML specification, the next generation standard of the Internet, is formulated by the W3C Alliance. The mobile phone version is mainly implemented by webkit. For users, the browser implements it.

HTML5+ / HTML5Plus

When developing mobile apps through HTML5, you will find that HTML5 does not have many capabilities. In order to make up for the lack of HTML5 capabilities, the China HTML5+ Industry Alliance was established under the guidance of W3C China and launched the HTML5+ specification.

HTML5+ extends the JS object plus, allowing JS to call system capabilities that cannot be implemented or implemented poorly by various browsers, such as device capabilities such as cameras, gyroscopes, file systems, etc., and business capabilities such as uploading and downloading, QR codes, maps, and payments. , voice input, message push, etc. It also implements the parsing engines of Android and IOS, allowing developers to write their code once and run it across platforms.

In addition to functions, a very important feature of HTML5+ is that it provides native rendering capabilities. Through plus.webview, plus.nativeObj, plus.nativeUI, developers can use JS to call native rendering capabilities, greatly improving the experience.

There are as many as 400,000 native APIs. HTML5+ encapsulation does not encapsulate all 400,000 APIs, but is divided into two levels: HTML5+ specifications and Native.js

Native.js

There are more than 400,000 native APIs in mobile OS, and a large number of APIs are not encapsulated by HTML5+. Therefore, Native.js maps more than 400,000 native APIs into JS objects, and the native APIs of IOS and Android can be directly adjusted through JS. This part is no longer cross-platform, and is written as plus.ios and plus.android respectively.

The above HTML5+ is a well-implemented subset of Native.js. Native.js is not a JS framework, it is technology!

Using Native.js requires a good understanding of native syntax and API. You must at least learn Android or IOS development, otherwise you can only copy other people's code.

HTML5+ Runtime / 5+ Runtime

HTML5+ Runtime is the running environment of Native.js. What .NET is to C# and JRE is to JAVA, it has the native API function of mapping Native.js to JAVA and ObjectC code, thereby realizing native calls.

The relationship between HTML5+ Runtime and Native.js can be understood as: Native.js is a language (grammar based on JS), and HTML5+ Runtime is the running environment of this language!

HTML5+ SDK / 5+ SDK

Software development kit, which is the same as Android SDK and IOS SDK.

HTML5+ SDK encapsulates HTML5+ Runtime into a native SDK. It has three uses:

  • Use HTML5+ SDK to implement local packaging.
  • Extend the capabilities of the HTML5+ Runtime with native code.
  • Use HTML5+ SDK to replace the original webview in existing native projects to obtain stronger web enhancement performance.

- Source: uniapp, HTML5, HTML5+, HTML5+ Runtime, HTML5+ SDK, Native.js Glossary


☀ Extra: Summary of the differences between native App and webApp

The differences between native apps and webapps are: different sources, different development costs, and relatively different fluency.

1. Different sources

1. Native app: A native app is an APP developed in the same programming language as the operating system installed on the mobile device.

2. Webapp: Webapp is a software packaged by a website made with HTML5 through some packaging platforms or using tools.

2. Different development costs

1. Native app: Native app development costs are high and requires the use of separate development tools for development.

2. Webapp: Webapp development costs are low and does not require the use of separate development tools for development.

3. Fluency is relatively different

1. Native app: Native app is perfectly adapted to mobile devices and has relatively high fluency.

2. Webapp: The webapp is compatible with mobile devices and has relatively low fluency.

Related references: What are the differences between native apps, webapps, and hybrid apps?

Guess you like

Origin blog.csdn.net/sunyctf/article/details/134894222