JD.com’s mini-program platform helps Kuaishou achieve cross-terminal implementation | JD.com Cloud technical team

Foreword:

The JD Mini Program Open Platform is a developer open platform independently developed by JD.com. It is similar to the mini program open platforms of WeChat and Alipay. It provides rich open capabilities and functions required for a complete mini program development life cycle. Developers can easily use the developer tool IDE for development, debugging, previewing and code conversion, and perform online mini program release, review, grayscale, AB testing and other processes on the console. In addition, they can also monitor mini programs in the management background. exceptions, performance, and business data.

As a lightweight, convenient, and personalized application form, mini programs are very malleable. Their powerful functions and low R&D costs can effectively help express delivery achieve cross-end delivery. Dada Express's access to the JD Mini Program project has achieved remarkable results in many aspects, which also provides useful reference for other companies when accessing the Mini Program.

background:

Kuaishou is an application for issuing intra-city waybills to merchants and individual users, including 15 mini programs (7 channels) and apps (2), PC, h5, and open platforms.

Express delivery overview:

The conventional approach is to independently develop a set of code for each end. This approach has the advantage of strong customization and separate iterations without affecting each other. The disadvantages are: high cost and inconsistent experience. Since PC and H5 basically do not iterate, the priority is whether there are opportunities in small programs and apps. The purpose of improving efficiency and reducing R&D costs is achieved through cross-terminal.

1.1 Mini program cross-terminal

Cross-end situation in 2019:

Since the cross-end solution was immature in 2019, self-developed tools were used to solve the problem of cross-end mini programs through compile-time solutions, and a unified set of codes for seven mini programs was completed.

1.2 The app introduces h5 cross-terminal

Explore app cross-terminal:

At that time, we explored two directions: h5 and flutter.

Flutter: If you need to use the main process, the existing functions need to be redeveloped using Flutter, and the migration cost is high.

h5: The access cost is low, but the experience is poor and the loading speed is slow, so it is only used in some non-core processes and some activity pages (accounting for 15%), and cannot be used in the main process.

Kuaisong app cross-end-h5 solution

Where is the direction of the subsequent cross-end on the express delivery end? Is there any chance?

At present, each platform's small program has one set of codes, and 95% of the iterations for iOS and Android are still two sets of codes.

Can WeChat applet, ios, and android be unified? The most important thing in overcoming the main process is that the conversion rate cannot drop.

action

1.1 Solution research and selection

Group cross-terminal platform

Based on the background of integration with JD.com, we focused on investigating the group’s cross-end solutions. It is understood that the group has 4 cross-end solutions, as follows:

Based on the above research, we initially judged that the mini program solution is a more feasible solution, so we conducted further research on the mini program solution.

Mini program research

The survey is mainly divided into three parts, comprehensive understanding, demo test performance, and online test stability.

1. Usage of JD Mini Programs in various business lines within JD.com

•Mature business and main processes are in use

•Has a dedicated team for maintenance

Host business Scenes Access reason
Jingdong Luxury goods (such as: LV) Search the LV brand on the main website app and enter the LV mini program Maintain brand identity
Jingdong JD Express Search for JD Express on the main website app and enter the JD Express applet. drainage
Jingdong Insurance Search for insurance and enter the insurance buying applet The insurance business is subject to national compliance restrictions. If you want to meet national compliance requirements on the main website, you need to make a lot of changes to both the front and back ends, which is costly. The JD mini program platform is an open developer platform, which is independent and highly Customizable capabilities can meet national compliance requirements at a basic level.
Kyome Print applet There is a quick entrance on the chat page to enter the print settings applet. Platformization
JD Health Some modules (such as health management) There are some independent business modules in the app which are small programs. Reusing WeChat mini program capabilities is also to improve access efficiency
JD Daojia Coupon page Click the coupon in my module to enter the coupon page, which is a small program development Optimize experience (h5)

2. Test the performance through demo (including map effects)

Conclusion: Both high-end and low-end models open in seconds, and the effect is close to the native experience. In particular, the map dragging and loading effects are consistent with the native effects.

3. Launch the "Price Details" page to collect actual user data

Since the "Price Details" page has a map and is used frequently, the key point is that this page does not block the main process. It is most suitable for online testing pages.

Conclusion: The degradation rate of the first version is 5%, but if you want to standardize the application, the degradation rate needs to be controlled within 1%. Therefore, online situation monitoring, data analysis, etc. are used to find the cause of the problem and optimize the final degradation rate to be controlled within 0.3%. .

1.2 Overcoming difficulties

How to prevent users from knowing whether they are entering a mini program page or a native page?

Mini program models on the market all exist in independent forms. For example, each business mini program in the WeChat mini program has complete business functions. The loading of the mini program has a complete and independent process and is not controlled by the host App. On our side It is expected that the mini program will be embedded into the process without being perceived by users. At the same time, it is hoped that the loading timing in the mini program can be controlled and the loading speed will be improved. This requires the Kuaishou team and the JD mini program platform team to work together to use a new mini program. Program mode to meet the above two needs.

How to reduce upstream and downstream impacts as much as possible?

Because the business backend and operation platform previously had some scenarios where differentiated management was done based on the end. In addition, the buried points data on the app and the buried points on the mini program are not unified, and the data reports are also separate. In order to reduce the impact on the upstream and downstream of the system, we need to do different processing according to different scenarios.

1.3 How to avoid risks

How to deal with compliance risks? Will our business be suspended due to the inability to use mini programs due to new policy changes?

The app only maintains the basic function of issuing orders as a backup, once every quarter. If the situation changes, you can quickly switch back to the original function to avoid the risk of business suspension. Normally, native pages are only used for downgrade in extreme cases.

progress

At present, the survey and access to the details page have been completed, the downgrade rate is less than 1%, and the business conversion rate has not declined. Taking the order details page as an example, we focus on four business indicators: "Modify order", "Pay details", "Cancel order", and "Add tip". These are the four core operations on the order details page. Judging from the usage data, the business conversion rate has not declined.

Phased results:

planning

Which modules are suitable for cross-terminal mini programs? Consider it from several dimensions?

1. Whether it is compliant - whether it can pass the App Market review. For example, if the homepage is not native to the Apple App Market, it will not pass the review directly.

2. Will there be high-frequency iterations in the future? If there is no iteration for multiple orders all the way, there is no need to migrate the mini program.

3. Is the process internally closed loop---the more interactions with native, the higher the subsequent maintenance costs (login, payment)

1. Cost: 80% of iterations implement a set of codes for 3 terminals, which is expected to save 2HC manpower

2. Stability: shorten the convergence time of online problems - from 14 days to 1 day

3. Efficiency: shorten the verification time of new functions - shortened by 58% (53 days shortened to 22 days)

appendix:

card effect

Comparison of native and mini program experience effects:

Author: JD Retail Wang Huijing

Source: JD Cloud Developer Community Please indicate the source when reprinting

Lei Jun: The official version of Xiaomi’s new operating system ThePaper OS has been packaged. A pop-up window on the Gome App lottery page insults its founder. The U.S. government restricts the export of NVIDIA H800 GPU to China. The Xiaomi ThePaper OS interface is exposed. A master used Scratch to rub the RISC-V simulator and it ran successfully. Linux kernel RustDesk remote desktop 1.2.3 released, enhanced Wayland support After unplugging the Logitech USB receiver, the Linux kernel crashed DHH sharp review of "packaging tools": the front end does not need to be built at all (No Build) JetBrains launches Writerside to create technical documentation Tools for Node.js 21 officially released
{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/u/4090830/blog/10120871
Recommended