Ngăn ứng dụng canvas khởi động lại 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 này 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 quá trình 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 Power Apps ứng dụng dành cho thiết bị di động được người dùng đặt ở chế độ nền.

Giới hạn về bộ nhớ và xử lý 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 ở chế độ nền và 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ẽ tạm dừng trang nếu tiêu thụ quá nhiều năng lượng.

Trên Android thiết bị, quá trình khởi động lại ứng dụng này có thể giống như sự cố do ứ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 được thực hiện bởi các nhà sản xuất ứng dụng, nhưng dưới đây là một số mẹo mà người dùng cuối có thể sử dụng để giảm tỷ lệ 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ớ đệm để xóa dữ liệu đã lưu. Xin lưu ý rằng việc này chỉ nên thực hiện khi người dùng cuối có dữ liệu vì việc xóa bộ nhớ đệm sẽ xóa mọi SaveData hoặc bộ nhớ đệm ứ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úp ứng dụng luôn chạy trong các cài đặt như tối ưu hóa pin và cấu hình chế độ 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 sử dụng ứng dụng chậm hơn – tạm dừng một chút giữa các lần điều hướng trên màn hình hoặc sau khi chụp ảnh hoặc lưu hay tải dữ liệu.

Mẹo phòng ngừa 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 những cải tiến lớn nhất về bộ nhớ để 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à làm theo các phương pháp hay nhất về việc sử dụng tài nguyên.

Lưu ý

Vì việc khởi động lại ứng dụng 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 khởi động lại ứng dụng. Càng giảm được nhiều bộ nhớ và khả năng 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 Màn hình để xem ứ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ớ ở đâu. 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 thức hoạt động của ứng dụng bằng cách ghi lại tất cả các hoạt động chính xảy 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ể phải xử lý quá nhiều và bị hệ điều hành 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 màn hình được tải, điều này có thể yêu cầu chia đôi 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 đang tải một thư viện lớn có nhiều bộ lọc và tra cứu.

Hãy cân nhắc việc sử dụng các công thức được đặt tên.

Hãy 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ó hiện tượng rò rỉ bộ nhớ xảy ra trên màn hình, dẫn đến mứ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 vào 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 vì 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 chặ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à kết nối dữ liệu đều làm tăng tổng bộ nhớ mà ứng dụng đang sử dụng. SaveData cũng là một thao tác nặng về xử lý. Đưa 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ể.

Đang bật Cài đặt ứng dụng lựa chọn cột rõ ràng và tắt Ghi lại 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 lượng dữ liệu được đưa vào ứng dụng.
Ứng dụng sẽ khởi động lại khi sử dụng điều khiển camera. Đ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 Luồng, hãy đặt thuộc tính StreamRate càng cao càng tốt để giảm số lượng cập nhật.
Ứng dụng sẽ khởi động lại khi sử dụng điều khiển Thêm ảnh . Kiểm soát 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ể. Hãy cân nhắc việc thay đổi nơi ghi lại nội dung đa phương tiện.

Hãy cân nhắc việ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.

Hãy 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 tệp thay vì chụp chúng bằng camera.

Hãy 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, Máy quét/đầu đọc mã vạch, Xem trong MR, Camera đo và các thiết bị khác. Kiểm soát gốc có thể đặt ứng dụng ở chế độ nền trong đó hệ điều hành có các giới hạn chặt chẽ hơn về bộ nhớ trước khi khởi động lại ứng dụng. Đảm bảo tất cả các thao tác chuyên sâu về bộ nhớ và xử lý đề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.

Hãy cân nhắc chuyển sang một điều khiển khác như Camera 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ó lượng bộ nhớ và khả năng xử lý khác nhau. Ví dụ: các thiết bị cũ dễ khởi động lại ứng dụng hơn do khả năng xử lý khả dụng thấp hơn.

Việc chạy các ứng dụng khác cũng có thể làm giảm lượng xử lý có sẵn. 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 có sẵn cho ứng dụng.
Hãy giới thiệu cho người dùng của bạn những 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.

Hãy cân nhắc đầu tư vào các thiết bị đáp ứng nhu cầu về hiệu suất cho ứng dụng của bạn.
Việc khởi động lại ứng dụng vẫn 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ả ứ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 dưới đây.

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