Ngăn việc khởi động lại ứng dụng canvas trong ứng dụng Power Apps dành cho thiết bị di động

Khi bạn chạy ứng dụng canvas trong Power Apps ứng dụng dành cho thiết bị di động, ứng dụng đó có thể được khởi động lại vì những lý do sau:

  • Ứng dụng đang sử dụng quá nhiều tổng bộ nhớ.
  • Ứng dụng đang sử dụng quá nhiều bộ nhớ hoặc xử lý cùng một lúc.
  • Ứng dụng được chuyển sang nền – khi ứng dụng cụ thể của bạn sử dụng điều khiển gốc (như Thêm ảnh hoặc Máy quét mã vạch) hoặc ứng dụng dành cho thiết bị di động Power Apps được người dùng đặt ở chế độ nền.

Giới hạn xử lý và bộ nhớ này, đặc biệt nghiêm ngặt khi Power Apps ứng dụng dành cho thiết bị di động chạy trong nền, do hệ điều hành (Android hoặc iOS) áp đặt. Nếu ứng dụng sử dụng nhiều tài nguyên hơn mức khả dụng trên thiết bị của bạn thì ứng dụng sẽ đặt lại. Điều này tương tự như khi bạn truy cập một trang web lớn phức tạp, trình duyệt web sẽ treo trang đó nếu nó tiêu tốn quá nhiều năng lượng.

Trên Android thiết bị, việc khởi động lại ứng dụng này có thể giống như sự cố vì ứng dụng đã đóng hoàn toàn và người dùng được đưa đến màn hình chính của thiết bị.

Hãy sử dụng bài viết này để tìm hiểu cách ngăn ứng dụng canvas khởi động lại trên Power Apps thiết bị di động.

Mẹo phòng ngừa cho người dùng cuối

Mặc dù những cải tiến lớn nhất thường do nhà sản xuất ứng dụng thực hiện, nhưng đây là một số mẹo mà người dùng cuối có thể sử dụng để giảm khả năng khởi động lại ứng dụng:

  • Trong Power Apps ứng dụng dành cho thiết bị di động, trên trang hồ sơ người dùng, hãy chọn Xóa bộ nhớ cache để xóa dữ liệu đã lưu. Lưu ý rằng điều này chỉ nên được thực hiện khi người dùng cuối có dữ liệu vì việc xóa bộ nhớ cache sẽ xóa mọi SaveData hoặc bộ nhớ cache của ứng dụng.
  • Trên Android thiết bị, hãy đảm bảo Power Apps ứng dụng dành cho thiết bị di động được ưu tiên. Tham khảo hướng dẫn sử dụng thiết bị của bạn để giữ cho ứng dụng chạy thông qua các cài đặt như tối ưu hóa pin và cấu hình ngủ của ứng dụng.
  • Đóng mọi ứng dụng đang chạy, ngoại trừ Power Apps ứng dụng dành cho thiết bị di động và xóa mọi dữ liệu không cần thiết khỏi thiết bị, chẳng hạn như các ứng dụng hoặc hình ảnh không sử dụng.
  • Mặc dù nó cồng kềnh, nhưng hãy cân nhắc việc sử dụng ứng dụng chậm hơn – tạm dừng một chút giữa các thao tác điều hướng trên màn hình hoặc sau khi chụp ảnh hoặc lưu hoặc tải dữ liệu.

Mẹo ngăn chặn dành cho nhà sản xuất ứng dụng

Các nhà sản xuất ứng dụng có thể thực hiện các cải tiến bộ nhớ tốt nhất để giảm số lần khởi động lại ứng dụng. Khi tạo ứng dụng, hãy nhớ tối ưu hóa ứng dụng để chạy trên thiết bị có thông số kỹ thuật thấp nhất mà người dùng cuối của bạn sẽ sử dụng và tuân theo các phương pháp hay nhất về việc sử dụng tài nguyên.

Lưu ý

Vì ứng dụng khởi động lại là do hệ điều hành hạn chế dung lượng bộ nhớ và quá trình xử lý mà một ứng dụng có thể thực hiện, nên có thể cần kết hợp các biện pháp giảm thiểu được đề xuất bên dưới để giảm thiểu việc ứng dụng khởi động lại. Càng giảm được nhiều bộ nhớ và quá trình xử lý, cả về tổng thể và cùng một lúc, thì khả năng khởi động lại ứng dụng sẽ càng ít.

Tiền bo

Bạn có thể kết nối phiên ứng dụng dành cho thiết bị di động với Giám sát để xem nơi ứng dụng của bạn đang thực hiện các hoạt động xử lý nặng hoặc sử dụng nhiều bộ nhớ. Màn hình là một công cụ cung cấp cho người tạo cái nhìn sâu sắc về chức năng và cách ứng dụng thực hiện bằng cách ghi nhật ký tất cả các hoạt động chính diễn ra trong ứng dụng khi ứng dụng chạy.

Vấn đề Nguyên nhân gốc rễ Giảm nhẹ
Ứng dụng khởi động lại khi tải một màn hình cụ thể. Nếu một màn hình cụ thể đang chạy quá nhiều công thức cùng một lúc, ứng dụng có thể xử lý quá nhiều và hệ điều hành sẽ khởi động lại. Giới hạn số lượng điều khiển trên màn hình và số lượng công thức được chạy khi tải màn hình, điều này có thể yêu cầu chia nhỏ màn hình.

Tránh sự phụ thuộc kiểm soát giữa các màn hình.

Ngăn người dùng thực hiện hành động trong thời điểm xử lý cao. Ví dụ: khi một thư viện lớn có nhiều bộ lọc và tra cứu đang tải.

Cân nhắc sử dụng các công thức được đặt tên.

Cân nhắc sử dụng cài đặt ứng dụng Tải trễ .
Ứng dụng khởi động lại sau nhiều lần điều hướng trên màn hình. Có rò rỉ bộ nhớ xảy ra trên màn hình, dẫn đến việc sử dụng bộ nhớ tăng lên khi người dùng điều hướng xung quanh ứng dụng. Bật cài đặt ứng dụng Lưu các màn hình đã truy cập gần đây trong bộ nhớ . Mặc dù điều này làm tăng tổng mức sử dụng bộ nhớ trong thời gian ngắn do màn hình được lưu trong bộ nhớ, nhưng trên nhiều thao tác điều hướng trên màn hình, nó sẽ ngăn rò rỉ bộ nhớ.
Ứng dụng khởi động lại khi thực hiện SaveData/LoadData hoặc sử dụng kết nối dữ liệu. SaveData và các kết nối dữ liệu đều làm tăng tổng bộ nhớ đang được ứng dụng sử dụng. SaveData cũng là một hoạt động nặng về xử lý. Đưa một lượng lớn dữ liệu vào ứng dụng và lưu dữ liệu đó để sử dụng ngoại tuyến (đặc biệt là nội dung phương tiện và tệp) có thể khiến ứng dụng vượt quá bộ nhớ được phân bổ, khiến hệ điều hành khởi động lại ứng dụng. Tối ưu hóa lượng dữ liệu đưa vào ứng dụng thông qua kết nối dữ liệu và được lưu qua SaveData.

Giảm số lượng lệnh gọi SaveData nếu có thể.

Bật cài đặt ứng dụng Lựa chọn cột rõ ràng và tắt Ghi phạm vi mối quan hệ một-nhiều và nhiều-nhiều cài đặt ứng dụng cũng có thể giúp giảm dữ liệu được đưa vào ứng dụng.
Ứng dụng khởi động lại khi sử dụng điều khiển máy ảnh. Điều khiển máy ảnh lưu hình ảnh đã chụp vào bộ nhớ. Điều này có thể làm tăng mức sử dụng bộ nhớ của ứng dụng, đặc biệt nếu hình ảnh đã chụp được lưu vào các biến hoặc Lưu dữ liệu sử dụng Trên dòng tài sản. Không lưu bất kỳ hình ảnh nào ngoài hình ảnh được chụp gần đây nhất.

Sử dụng hình chụp thay vì Suối để chỉ chụp ảnh khi người dùng chạm vào máy ảnh.

Nếu bạn cần sử dụng Stream, hãy đặt thuộc tính StreamRate càng cao càng tốt để giảm số lần cập nhật.
Ứng dụng khởi động lại khi sử dụng điều khiển Thêm ảnh . Điều khiển Thêm ảnh lưu nội dung đa phương tiện đã chọn vào bộ nhớ. Do kích thước của nội dung đa phương tiện, điều này có thể dẫn đến áp lực bộ nhớ đáng kể. Cân nhắc thay đổi vị trí chụp nội dung phương tiện.

Cân nhắc tắt thuộc tính UseMobileCamera để người dùng chỉ có thể chọn phương tiện từ thư viện/thư viện ảnh.

Cân nhắc sử dụng điều khiển tệp đính kèm (như một phần của biểu mẫu) để chỉ chọn các tệp thay vì chụp chúng bằng máy ảnh.

Cân nhắc chuyển sang điều khiển máy ảnh.
Ứng dụng khởi động lại khi sử dụng các điều khiển gốc như Thêm ảnh, Trình quét/đọc mã vạch, Xem trong MR, Camera đo và các loại khác. Các điều khiển gốc có thể đặt ứng dụng ở chế độ nền trong đó hệ điều hành có các giới hạn nghiêm ngặt hơn đối với bộ nhớ trước khi khởi động lại ứng dụng. Đảm bảo rằng tất cả bộ nhớ và hoạt động xử lý chuyên sâu đã được hoàn thành trước khi sử dụng các điều khiển này. Ví dụ: tắt điều khiển Thêm ảnh cho đến khi mọi thao tác SaveData hoàn tất.

Cân nhắc chuyển sang một điều khiển khác như Máy ảnh thay vì Thêm ảnh.
Việc khởi động lại ứng dụng xảy ra đối với một nhóm nhỏ thiết bị. Các thiết bị có dung lượng bộ nhớ và khả năng xử lý khác nhau. Ví dụ: các thiết bị cũ hơn dễ bị khởi động lại ứng dụng hơn do khả năng xử lý khả dụng của chúng thấp hơn.

Có các ứng dụng khác đang chạy cũng có thể làm giảm khối lượng xử lý khả dụng. Tương tự, các ứng dụng khác được cài đặt và nhiều ảnh/phương tiện được lưu vào thiết bị có thể chiếm bộ nhớ, làm giảm dung lượng khả dụng cho ứng dụng.
Giới thiệu cho người dùng của bạn các mẹo được liệt kê ở trên trong phần Mẹo phòng ngừa dành cho người dùng cuối của chúng tôi.

Cân nhắc đầu tư vào các thiết bị đáp ứng nhu cầu về hiệu suất của ứng dụng của bạn.
Khởi động lại ứng dụng tiếp tục xảy ra. Việc sử dụng bộ nhớ bị ảnh hưởng bởi cách tác giả của ứng dụng canvas. Đảm bảo ứng dụng của bạn tuân theo các phương pháp hay nhất có thể giúp đảm bảo hiệu suất, giảm mức sử dụng bộ nhớ và xử lý. Tối ưu hóa ứng dụng của bạn theo các phương pháp hay nhất bên dưới.

Các phương pháp hay nhất để xây dựng ứng dụng hiệu quả