Tắt Quảng Cáo [X] Đăng Nhập để ẩn Tất Cả Quảng Cáo #j2team_share **[GIẢI QUYẾT LỖI UX (TRẢI NGHIỆM NGƯỜI DÙNG) TỒN TẠI 9 NĂM TRONG MÃ NGUỒN ANDROID]** Thời gian gần đây mình có bắt đầu mày mò về mã nguồn Android và Linux Kernel. Mình có hỗ trợ một số cộng đồng custom ROM để phát triển tính năng cũng như fix bug còn tồn tại. Hiện nay các bản tùy biến của Android hầu hết được phát triển từ mã nguồn gốc của Google là AOSP hoặc nhánh của cộng đồng LineageOS. Trước đây vài năm mình cũng đã thử sử dụng các bản tùy biến này, tuy nhiên có một lỗi xuất hiện khi một số app có hiện tượng vuốt "không được mượt" trên các bản ROM AOSP. Hôm nay, nhân cơ hội được tham gia và xem mã nguồn của một custom ROM, đây là nguồn thông tin để mình xác định nguyên nhân lỗi. Mình đã từng report cho nhiều cộng đồng phát triển, nhưng app đơn giản không gặp vấn đề này mà chỉ xuất hiện ở các app như mua sắp, mạng xã hội nhiều thông tin, dù đã gần 2 năm kể từ ngày mình báo cáo tuy nhiên những maintainer vẫn không tìm/hoặc không giải quyết được vấn đề trên. Khi mình báo cáo lên cộng đồng nhiều người dùng cho rằng đó là vấn đề bình thường của Android, một người dùng cũng ở Việt Nam báo cáo rằng MIUI của Xiaomi cũng gặp vấn đề tương tự. Một số báo cáo khác thì chuyển hướng sang các framework phát triển ứng dụng như Facebook React Native hay Google Flutter. Các cộng đồng đó cũng để ngỏ nguyên nhân xuất phát từ các nền tảng trên. Không chấp nhận được lý do này, nên mình đã quyết tâm tìm bằng được vấn đề trên bằng cách dò các thành phần của Android kể cả Linux kernel. Tuy nhiên chưa từng có một commit hay issue nào trên Github nhắc đến nó. Các giải quyết cuối cùng là so sánh và dò mã nguồn có vấn đề bắt đầu từ đâu. Mình nhóm các module mã nguồn thành hai phân loại bao gồm các bộ mã nguồn gặp lỗi và bộ mã nguồn không gặp lỗi, từ đó kiểm tra từng file mã nguồn liên quan đến màn hình, cảm ứng, các component giao diện của Android,.... Đêm qua mình đã tìm đến 5h sáng nhưng không có kết quả rõ ràng, đến chiều hôm nay thì có vẻ đã tìm được vấn đề. Trong mã nguồn của ScrollView của Android Frameworks Base, có sử dụng thêm các biến static để lưu hành động cuộn trên màn hình, trên thực tế, người dùng chỉ cuộn trên một vùng thành phần nhất định trên ứng dụng. Tuy nhiên đối với các ứng dụng phức tạp nhiều đối tượng nhỏ trong danh sách như các app mua sắm, đặt đồ ăn hay kể cả app nghe nhạc được sử dụng nhiều các thành phần cuộn (ScrollView) chồng chéo lên nhau. Việc sử dụng static trong Java khiến các tính toán về vận tốc, gia tốc, vị trí của các thành phần này ghi chồng chéo lên cùng một biến, kết quả hệ thống không thể xác định được hành động để dự đoán gia tốc và quán tính của hành động vuốt từ ngón tay người dùng. Cuối cùng sẽ không có cuộn theo quán tính trên ứng dụng, người dùng sẽ cảm thấy màn hình có vẻ bị giật và chậm chạp. Lỗi này tồn tại ít nhất từ Android 4.3 (Jelly Bean) nghĩa là khoảng 9 năm nhưng vẫn chưa được sửa. Nếu tiếp tục có thể các bản Android về sau, kể cả những bản Android của các hãng sản xuất điện thoại (OEM) cũng có thể tiếp tục đưa lỗi này vào hệ điều hành của máy. Các custom ROM lớn như HavocOS đều đang gặp vấn đề này. Do sau khi thử nghiệm mình không thể build toàn bộ mã nguồn, nhưng rất cảm ơn khi blinoff82, admin của nhóm phát triển SyberiaOS đã giúp mình build và gửi nhanh ROM để mình có thể kiểm tra lại. Hi vọng sau khi pull request của mình được merge, người dùng Android sẽ có trải nghiệm tốt hơn trên thiết bị của mình. Mọi người có thể xem qua khi có và không có quán tính trong hoạt cảnh trên ứng dụng. https://www.youtube.com/watch?v=mYLSv7Il-D0 Đây là commit với việc chỉ sửa 3 từ để giải quyết con bug này. https://github.com/maytinhdibo/android_frameworks_base_havoc/commit/80d821c8ba090a211effd680d3f10076e564c9ce HavocOS code review. https://review.havoc-os.com/c/Havoc-OS/android_frameworks_base/+/122
Tận hưởng lợi ích của việc tham gia nhóm MMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO ToolsKiemTrieuDoGroup, bạn sẽ nhận ngay trình duyệt chống phát hiện miễn phí vĩnh viễn, cùng với bộ công cụ cho các nền tảng như amazon, ebay, walmart, etsy, homedepot, apple, cookie pumper control và tất cả các trình duyệt chống phát hiện khác như gologin, mutilogin, vmlogin, dolphin, ominilogin, adspower, vektorT13, ios... Tất cả đều hoàn toàn miễn phí. Bạn cũng sẽ có trong tay bộ công cụ đầy đủ để thay đổi thông tin PC cho MMO, bảo vệ thông tin cá nhân khỏi phát hiện và tạo các loại tài khoản khác nhau để lưu trữ cookies và hồ sơ chống phát hiện. //////////////////////////// Get FREE Here ✔️✔️✔️ Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO Vui lòng đăng kí hoặc đăng nhập để thấy liên kết tại BigMMO