Tại sao smartphone Android của bạn chạy chậm và cách xử lý
Smartphone Android là những thiết bị tuyệt vời, có thể thực hiện rất nhiều công việc nhờ mã nguồn mở. Tuy nhiên cũng chính vì vậy mà hầu hết các vấn đề liên quan đến hệ điều hành này đến từ sự hiểu biết chưa đầy đủ về Android.
Bài viết này sẽ giúp các bạn loại bỏ các quan niệm sai lầm và tiến hành các bước để khiến nó hoạt động nhanh trở lại.
Do cách mà hệ điều hành Android quản lí bộ nhớ và ứng dụng, bạn càng chạy nhiều ứng dụng thì càng ít bộ nhớ được cấp cho chúng. Cụ thể máy của bạn sẽ chậm đi bởi nó phải dành nhiều thời gian hơn cho việc chuyển tiếp các ứng dụng, vốn có quá ít bộ nhớ để hỗ trợ. Điều này sẽ ảnh hưởng đến cả hiệu năng lẫn thời lượng sử dụng pin.
Dấu hiệu nhận biết:
Dấu hiệu 1: một ứng dụng đang tải bỗng nhiên dừng lại
Chẩn đoán: dịch vụ hỗ trợ tải (download) bị hệ thống ngừng lại, không thể tiếp tục tải. Bạn hãy truy cập vào Cài đặt / Ứng dụng / Dịch vụ đang chạy. Nếu dịch vụ này đang “khởi động lại” thì chắc chắn hệ thống đã tắt nó để chuyển bộ nhớ sang cho các ứng dụng khác.
Dấu hiệu 2: các ứng dụng ở launcher (trình quản lí màn hình chủ và menu ứng dụng) mất nhiều giây để mở
Các hiệu ứng động trở nên chậm chạp. Kể cả nếu bạn cài một launcher khác, vấn đề vẫn không thuyên giảm.
Chẩn đoán: hệ thống đang bận chuyển bộ nhớ cho các dịch vụ và hoạt động. Ở mục dịch vụ đang chạy, bạn thấy rất nhiều trong số chúng “đang khởi động lại”, hoặc thời gian chạy “active” của chúng rất ngắn, chỉ một vài giây.
Dấu hiệu 3: pin hết veo chỉ trong nửa ngày
Chẩn đoán: có quá nhiều dịch vụ ngầm đang chạy và chúng sử dụng hết dung lượng pin.
Nếu bạn truy cập vào mục theo dõi sử dụng pin (Cài đặt / Giới thiệu / Sử dụng pin) và bạn thấy một danh sách dài các ứng dụng cùng với lượng pin tính theo phần trăm mà chúng sử dụng, điều này có nghĩa là bạn đã kích hoạt quá nhiều ứng dụng. Chúng ăn pin từng chút một và dẫn đến hiện tượng hết pin rất nhanh.
Chỉ có một nguyên nhân: quá nhiều ứng dụng nhưng lại quá ít bộ nhớ. Tuy nhiên, bởi bộ nhớ ở điện thoại Android không thể mở rộng (trừ khi bạn mua máy khác), bạn chỉ có thể giải quyết tình trạng này bằng cách xóa một vài ứng dụng đi để giải phóng bộ nhớ. Trước tiên, hãy cùng nghiên cứu sâu hơn vào hệ điều hành Android và xem cách nó quản lí bộ nhớ, từ đó hiểu tại sao giải phóng bộ nhớ sẽ giúp máy bạn chạy nhanh hơn và ít lỗi hơn.
Không đủ bộ nhớ:
Hệ điều hành Android có 3 loại bộ nhớ chính: RAM (để chạy các chương trình), lưu trữ ứng dụng (để chứa các ứng dụng có sẵn hoặc được tải về) và thẻ nhớ SD (lưu trữ nhạc, ảnh và đóng vai trò lưu trữ phụ). Một vài thiết bị còn có thẻ SD trong (internal SD) và SD ngoài (external SD), chúng sẽ có tên thư mục lần lượt là “sdcard” và “sdcard-ext”.
Quản lí RAM là vấn đề rất phức tạp ở Android, bởi hệ điều hành này dựa trên nhân (kernel) Linux, và kể cả một lập trình viên Linux có kinh nghiệm cũng nói với bạn rằng nó khá khó hiểu. Trước khi Android khởi chạy, riêng phần cứng của máy đã chiếm khoảng 32 MB bộ nhớ. Rồi sau đó là các ứng dụng khác (acore, điện thoại, Google, hệ thống…) sẽ lấy khoảng 65-80 MB. Như vậy đã có 100-128 MB “ra đi”, dù bạn chưa thực sự sử dụng một ứng dụng nào.
Thứ đầu tiên mà bạn sử dụng, dù bạn có thể không biết, đó là launcher. Tùy vào các launcher khác nhau, chúng thường lấy mất đi khoảng 8 – 30 MB.
Giờ đến lượt các ứng dụng riêng lẻ. Thực ra nó không đơn giản như tên gọi. Rất nhiều ứng dụng được cấu thành từ nhiều bộ phận khác nhau, phần ngoài được gọi là quy trình (process), và phần trong được gọi là dịch vụ (service). Bởi cách nó hoạt động trong hệ sinh thái Android, một ứng dụng nặng vài trăm KB cũng có thể chiếm ít nhất 3 MB bộ nhớ, thậm chí nhiều hơn nhiều.
Hãy truy cập vào mục quản lí dịch vụ. Bạn sẽ thấy mỗi dịch vụ chiếm từ 2 – 5 MB, một số từ 15 MB trở lên. Như vậy các ứng dụng không còn nhiều bộ nhớ để sử dụng, đặc biệt nếu các dịch vụ trên được mở thường xuyên. Bạn càng chạy nhiều ứng dụng (hoặc chúng tự động chạy), càng ít bộ nhớ có sẵn trong hệ thống.
Mỗi tiện ích (widget) mà bạn đặt ra ngoài màn hình được hỗ trợ bởi một dịch vụ. Nếu bạn dùng khoảng 5 widget, hãy chào tạm biệt 20 MB bộ nhớ hoặc hơn. Đó là chưa kể đến hình nền động (live wallpaper), chúng thường chiếm khoảng 10-20 MB. Như vậy trước khi chạm vào màn hình sau khi máy khởi động, đã có 160 MB RAM tuột khỏi tay bạn.
Những smartphone Android đời đầu quản lí RAM cực kém. Chiếc điện thoại Google đầu tiên, T-Mobile G1 có bộ nhớ trong 192 MB, và Motorola Droid có 256 MB. Với 160 MB đã biến mất, hầu như chẳng còn gì để chạy các ứng dụng khác. Các thiết bị về sau đó như Samsung Galaxy S được trang bị 512 MB RAM, rồi 768 MB, 1 GB,… Hiện giờ, người dùng Android có thể tận hưởng nhiều nhất là 2 GB RAM với các thiết bị cao cấp như HTC One, Galaxy S III, Galaxy Note II…
Có thể bạn sẽ băn khoăn, nếu chỉ có 80 – 90 MB khả dụng, tại sao bạn có thể chạy 100 – 200 ứng dụng? Thực tế này có thể diễn ra là bởi thiết bị sẽ cố gắng nhồi nhét nhiều ứng dụng hơn bộ nhớ cho phép, nên nó sẽ tắt những ứng dụng và dịch vụ không quan trọng để nhường chỗ cho ứng dụng khác. Tuy vậy, những ứng dụng không may bị tắt đó có thể sẽ lại yêu cầu hệ thống đưa vào bộ nhớ. Nói một cách đơn giản hơn, CPU sẽ cố gắng nhét ứng dụng X và Y vào bộ nhớ, vốn chỉ đủ cho X, bằng cách chia sẻ thời gian giữa chúng. Nó sẽ load các ứng dụng, rồi lại đẩy chúng ra khỏi bộ nhớ để đưa các ứng dụng khác vào. Quá trình này diễn ra hoàn toàn âm thầm.
Video đang HOT
Bài học rút ra khá đơn giản: đừng để RAM chạy quá nhiều ứng dụng, bằng cách tự bạn hãy dùng ít ứng dụng đi.
Dù bộ nhớ lưu trữ ứng dụng của bạn có ít, nó cũng không quan trọng bằng RAM. Mỗi ứng dụng bạn chạy sẽ cần một chút khoảng trống để lưu trữ dữ liệu hỗ trợ. Vì vậy kể cả một ứng dụng nặng vài trăm KB cũng có thể chiếm vài MB dữ liệu. Đặc biệt là trình duyệt, cache của chúng có thể lên đến hàng chục MB.
Để xem bạn còn bao nhiêu chỗ để lưu ứng dụng, hãy vào Cài đặt / Thẻ nhớ SD / Bộ nhớ điện thoại. Ở phía dưới cùng nó sẽ cung cấp thông tin bạn cần.
Vậy chúng ta có thể làm gì?
Cách giải quyết
Cách 1: Xóa ứng dụng bạn ít khi dùng
Bạn dùng càng ít chương trình, điện thoại của bạn sẽ càng nhanh, bởi sẽ có rất nhiều bộ nhớ trống khả dụng. Nhiều bộ nhớ hơn sẽ giúp điện thoại chạy các ứng dụng thực sự tốt hơn.
Nếu bạn muốn lưu lại ứng dụng đó, hãy dùng Titanium Backup để giữ chúng lại ở thẻ nhớ SD. Hoặc chỉ cần download lại khi bạn cần.
Hãy tìm hiểu xem ứng dụng nào chiếm nhiều bộ nhớ lưu trữ nhất, bằng cách truy cập Cài đặt / Ứng dụng / Quản lí ứng dụng / Xếp theo kích thước.
Cách 2: Chuyển ứng dụng vào thẻ SD nếu được
Thực ra các ứng dụng nên được dùng ở bộ nhớ trong. Tuy vậy nếu bạn có thẻ nhớ microSD class 10, hãy chuyển chúng vào thẻ nhớ SD, ngoại trừ các ứng dụng bạn thường xuyên dùng nhất.
Cách 3: Dùng ít widget
Mỗi widget có một dịch vụ hoặc nhiều hơn hỗ trợ nó, và chúng chiếm khoảng 2 – 4 MB bộ nhớ, dù widget chỉ nặng chưa đến 100 KB. Càng nhiều widget bạn dùng, càng ít bộ nhớ khả dụng bởi chúng lần lượt chiếm hết.
Cách 4: Dùng hình nền tĩnh
Kể cả một hình nền động đơn giản nhất sẽ chiếm khoảng 2 MB bộ nhớ. Trong khi đó hình phức tạp hơn thì khoảng 20 MB. Và nó chạy mọi lúc mọi nơi. Đó là chưa kể đến gánh nặng đè lên CPU và pin.
Cách 5: Tự tay tắt các dịch vụ không cần thiết
Hầu hết các ứng dụng hiện nay đều có một service chạy ngầm đi kèm, và nó sử dụng khoảng vài MB bộ nhớ, kể cả khi không chạy.
Google Maps có dịch vụ Places thỉnh thoảng khởi chạy kể cả khi bạn không dùng Maps. Youtube cũng thường xuyên load dịch vụ widget, mặc dù bạn không sử dụng. Khi bạn thoát ra ngoài một ứng dụng nào đó, dịch vụ đi kèm theo chúng không đồng thời ngừng chạy.
Hãy tự tay tắt chúng (vào mục Dịch vụ đang chạy), bấm vào bất cứ dịch vụ nào để tắt và nhường chỗ cho những thứ khác. Nếu bạn ít dùng, tốt nhất là xóa hẳn nó đi.
Cách 6: Không dùng ứng dụng task killer theo lịch tự động
Advanced Task Killer và các ứng dụng tương tự có thể cản trở tới việc quản lí bộ nhớ của hệ thống. Bộ nhớ mà chúng giải phóng chỉ là tạm thời và có thể còn đến từ các ứng dụng đang trực tiếp chạy, sẽ không được hệ thống khởi động lại.
Cách tốt nhất để không làm nặng hệ thống là chạy ít ứng dụng đi, ngay từ đầu. Bạn có thể sử dụng các chương trình trên, nhưng hãy tắt tính năng tự động.
Các cách nâng cao dưới đây đòi hỏi quyền root và một số điều kiện khác, và bạn chỉ nên thực hiện nếu có kinh nghiệm và hiểu hệ điều hành Android.
Cách nâng cao 1: dùng chương trình quản lí Autorun
Bạn có thể dùng AutoStarts hoặc Autorun Manager ở kho ứng dụng Play Store để vô hiệu hóa chức năng tự chạy khi khởi động máy của một vài ứng dụng. AutoStarts cũng có thể ngăn các ứng dụng khởi chạy khi hệ thống thực hiện tác vụ nào đó, như bật Bluetooth. Ví dụ, nếu bạn có một ứng dụng, vốn được thiết kế để được kích hoạt khi bấm phím camera, nhưng lại không hoạt động, hãy dùng AutoStarts để xem ứng dụng nào khác đã tranh mất chức năng đó.
Ngoài ra có khá nhiều ứng dụng khác ngoài AutoStarts quảng cáo chức năng này, nhưng chỉ AutoStarts mới đáng tin cậy và thực sự hoạt động. Nếu không có root, chúng chỉ có ích trong một nửa số trường hợp.
Cách nâng cao 2: Dùng Auto Memory Manager hoặc AutoKiller để chỉnh cài đặt
Bạn có thể dùng 2 ứng dụng trên để yêu cầu trình quản lí bộ nhớ trở nên “mạnh tay” hơn, thay vì cài đặt mặc định rất “hiền lành”. Điều này có nghĩa là bạn không cần đến bất cứ ứng dụng task killer nào.
Cách nâng cao 3: Flash một kernel được ép xung
Việc flash một kernel được ép xung sẽ khiến bạn có thể tăng tốc độ xung nhịp của CPU. CPU OMAP trên Motorola Droid có tốc độ thực là 600 MHz, nhưng đã được giảm xuống còn 550 MHz để cải thiện thời lượng pin. Tuy nhiên, nó có thể dễ dàng được nâng lên cao hơn, thậm chí ở mức 1,2 hoặc 1,25 GHz.
Hãy nhớ rằng giới lập trình cung cấp rất nhiều kernel cho bạn, nhưng hãy dùng đúng cái được thiết kế cho điện thoại của mình, và lựa chọn tốc độ xung nhịp phù hợp. Ngoài ra, bạn cũng cần biết cách boot vào recovery để đề phòng bất trắc.
Cách nâng cao 4: Cài custom ROM
Hầu hết mọi người đều thích custom ROM, và quả thực rất nhiều trong số chúng nhanh hơn hẳn.
Với hầu hết từng chiếc điện thoại Android, đều có một vài hoặc vô số custom ROM dành riêng cho chúng. Các custom ROM nổi tiếng nhất hiện nay gồm có CyanogenMod, MIUI, Liquid, AOKP,…
Bạn sẽ ngạc nhiên với những gì custom ROM làm được
Kết luận
Quản lí bộ nhớ ở Android là một vấn đề phức tạp, và cách bộ nhớ được quản lí khiến cho việc cải thiện hiệu năng trở nên rất khó khăn. Chúng tôi hi vọng đã giúp bạn đọc được phần nào đối với công việc gian nan này.
Theo VnReview
Hàng loạt bản rom tùy chỉnh Android 4.4 ồ ạt chờ ngày phát hành
AOKP, CyanogenMod, CyanogenMod hay OmniROM đang dự kiến phát hành các bản rom cook KitKat với nhiều bổ sung đáng giá.
Hiện nay, Android 4.4 KitKat mới chỉ chính thức có mặt trên Nexus 5 và tương lai gần sẽ là một số thiết bị Nexus khác của Google. Tuy nhiên, các nhóm chuyên phát triển ROM cook như AOKP, CyanogenMod, OmniROM và Paranoid Android đã bắt đầu lên kế hoạch tung ra các bản rom tùy chỉnh được xây dựng từ nền KitKat.
AOKP
Vừa qua, đội ngũ phát triển AOKP thông báo rằng họ đang gấp rút làm việc trên cả nền Android 4.3 và Android 4.4. Một nửa số thành viên trong đội đang hoàn thiện bản build Milestone cho Android 4.3, trong khi nửa còn lại sẽ tập trung vào Android 4.4.
Nói cách khác, bản build AOPK đầu tiên của KitKat sẽ khá giống rom AOSP (AOSP là một bản ROM cơ bản do Google cung cấp), với nhiều tính năng riêng của AOKP. Tiếp đó, bản Nightlies cho KitKat dự kiến sẽ xuất hiện sớm. Tuy nhiên, đáng tiếc là AOPK không công bố thời điểm phát hành chính thức cho các sản phẩm của mình.
CyanogenMod
Như chúng ta đã biết, hiện nay nhóm CyanogenMod đã bắt đầu phát triển rom CyanogenMod 11, song giống như AOPK, thời điểm phát hành của CM11 vẫn chưa được hé lộ, và đặc biệt chúng ta cũng chưa có danh sách các thiết bị sẽ được hỗ trợ. Song đây là một số thông tin mà CyanogenMod đã cung cấp:
Mã nguồn của Android 4.4 đã bắt đầu được công bố từ ngày 31 tháng 10 (ngày lễ Halloween). Từ đó, chúng tôi phải mất khoảng 4 ngày để sàng lọc mã và đẩy lên kho lưu trữ Github của mình. Nhìn chung, kết quả đạt được đến giờ là tương đối tốt. Chúng tôi có thể bật mý trước một số thiết bị nằm trong danh sách hỗ trợ như: Xperia T, HTC One, S4 mini, Galaxy Tab và Skyrocket. Ngoài ra còn bao gồm cả Galaxy Nexus, Nexus 4, Nexus 7 (12/13) và Nexus 5.
Tuy nhiên, một số thành viên của CyanogenMod cũng xác nhận rằng mặc dù Android KitKat có thể hoạt động với các thiết bị đời cũ sở hữu chỉ 512 MB RAM nhưng chưa chắc chúng đã được các OEM quay lại hỗ trợ. Nhiều khả năng, CyanogenMod cũng sẽ không tung ra các bản rom dành cho các đời máy cấu hình yếu mà chủ yếu dồn lực cho các dòng sản phẩm thông dụng hiện nay. Một tin tốt là CM11 nightlies dự kiến sẽ ra mắt vào ngay cuối tháng này.
OmniROM
OmniROM là một trong những gương mặt tùy chỉnh ROM Android mới nổi bên cạnh các lão làng như AOPK hay CyanogenMod. Tất nhiên, OmniROM cũng đã có kế hoạch phát triển rom KitKat của mình.
Trong thực tế, ở thời điểm này, phiên bản thử nghiệm KitKat Omni đã có thể hoạt động cùng Galaxy Note, Galaxy S3, Nexus 4, Nexus 5, Nexus 7, LG Optimus G, Galaxy S2, Oppo Find 5, Xperia T và nhiều hơn nữa trong tương lai gần. Nhóm nghiên cứu cũng đã trình bày chi tiết một số tính năng được tích hợp sẵn trên bản rom Omni 4.4 bao gồm:
- Cài đặt sẵn mã nguồn mở Omni Installer (có thể tương thích với một vài thiết bị)
- Hoạt động nhẹ nhàng, mở và an toàn, hỗ trợ OTA
- Nhiều tuỳ chỉnh mà bạn sẽ cảm thấy hữu ích
- Tính năng bảo mật chưa từng thấy trước đây
- Tùy chỉnh cửa sổ làm việc
- OmniLink, một giao diện mở cho nhiều nhà cung cấp phụ trợ các dịch vụ khác nhau
- Thêm bộ lọc âm thanh trong DSP Manager để nâng cao trải nghiệm âm thanh của người dùng
- Chế độ Roadrunner
- Không xâm nhập thông báo cuộc gọi
- Cải tiến ứng dụng nhắn tin SMS gốc
- Cải tiến trình gọi điện Dialer gốc
- Cải tiến Daydream
Paranoid Android
Paranoid Android đã sẵn sàng phát hành bản build AOSP đầu tiên xây dựng cho KitKat, và giống như AOKP, nhóm Paranoid Android sẽ bắt đầu phát triển lại từ một bản AOSP KitKat "sạch" sau đó từng bước bổ sung thêm các chức năng tùy chỉnh nâng cao.
Mặc dù thời điểm phát hành bản rom mới của Paranoid Android không được tiết lộ, nhưng nhóm phát triển cho biết họ sẽ cố gắng cung cấp cho người dùng các trải nghiệm càng gần với bản rom KitKat nguyên gốc càng tốt.
Tạm kết
Trong khi chờ đợi các bản ROM cook được phát hành, người dùng có thể thử trải nghiệm các bản port KitKat không chính thức đã được phát hành dành cho Nexus 4, Nexus 7 (2012 và 2013), Galaxy Nexus, HTC One và Xperia Z để thấy được sự ưu việt của phiên bản mới so với Android Jelly Bean. Đối với các dòng máy chưa được hỗ trợ, người dùng không nên tự ý cài đặt các bản rom không tương thích để tránh những hậu quả đáng tiếc có thể xảy ra.
Về mặt bề nổi, Android 4.4 không mang tới quá nhiều tính năng xuất chúng nhưng theo như các thông tin có được gần đây là phiên bản này sẽ làm thay đổi toàn bộ nền tảng Android. Quan trọng nhất là nó trực tiếp giúp các thiết bị di động hoạt động mượt mà hơn, cải thiện thời lượng pin và tốc độ truy suất ứng dụng.
Theo VNE
Phát động cuộc thi Sáng tạo ứng dụng di động 2013 Sáng tạo ứng dụng di động 2013 là cuộc thi viết các phần mềm, ứng dụng di động trên nền tảng hệ điều hành Android dành cho sinh viên ngành công nghệ thông tin trên cả nước. Sáng ngày 28/11 vừa qua, tại TP. Đà Nẵng, Bộ GD-ĐT đã phối hợp với Công ty Công nghệ Huawei Việt Nam chính thức phát động...