다음을 통해 공유


오프라인용 앱 개발 모범 사례

이 문서에서는 오프라인 사용을 위해 구성된 앱 사용자에게 최상의 환경을 만드는 방법에 대한 권장 사항을 제공합니다.

  • 오프라인 사용을 위해 캔버스 앱을 구성하는 경우 앱이 데이터 원본에서 데이터를 가져오는 방법을 최적화해야 합니다. 자세히 알아보기: 캔버스 앱에서 최고의 오프라인 사용자 경험을 만드는 방법
  • 오프라인에서 작동하려면 앱이 처음에 네트워크 연결에 관계없이 독립적으로 작동할 수 있도록 리소스와 데이터를 포함한 모든 필수 자산을 다운로드해야 합니다. 이 프로세스는 앱을 처음 사용할 때 발생하는 일회성 설정입니다. 작업 이 초기 다운로드 속도는 기기에 다운로드되는 데이터 양에 영향을 받는데, 이는 오프라인 프로필 설정과 앱의 환경 내에서 사용자가 사용할 수 있는 데이터 양에 따라 결정됩니다. 원활한 초기 경험을 위해 오프라인 앱 출시를 계획하는 것이 좋습니다.

캔버스 앱에서 최고의 오프라인 사용자 경험을 만드는 방법

특정 시나리오에서 빠른 사용자 경험을 만들려면 다음 권장 사항을 활용하세요.

시나리오 권장되지 않는 접근 방식 권장되는 접근 방식
관련 테이블 정보를 갤러리에 표시합니다. 조회를 사용하여 데이터를 가져옵니다. 관련 테이블의 열이 포함된 뷰를 사용합니다.
많은 레코드로 필터링 가능한 갤러리를 만듭니다. Dataverse에서 레코드를 로드하고 컬렉션에 저장합니다. 갤러리의 항목을 필터링된 컬렉션으로 설정합니다. 갤러리의 항목을 Dataverse에서 필터링된 데이터로 직접 설정합니다.
여러 레코드를 업데이트합니다. 레코드를 반복하고 개별적으로 패치합니다. 모든 수정 사항이 포함된 컬렉션을 대량 패치합니다.

Monitor로 모바일 오프라인 캔버스 앱 진단

Monitor는 앱이 실행될 때 앱에서 발생하는 모든 주요 활동을 기록하여 앱이 무엇을 하고 어떻게 수행하는지에 대한 심층적인 보기를 제작자에게 제공하는 도구입니다. 모바일 앱 세션을 통해 연결 모니터링 하여 문제를 더 빠르게 진단하고 해결할 수 있습니다.

오프라인 앱 출시 계획

중요

자동 생성된 오프라인 프로필 (캔버스 앱에서만 사용 가능)을 사용 중이고 첫 번째 동기화에 너무 많은 시간이 걸리는 경우, 다음 모범 사례에 따라 수동 오프라인 프로필을 만들어야 합니다.

3단계에 걸쳐 오프라인 앱을 개발하고 출시하세요.

제작자는 1단계, 테스터는 2단계, 사용자는 3단계를 보여주는 그림.

1단계: 개발 및 반복

캔버스 앱에 대한 모바일 오프라인 설정을 하거나 모델 기반 앱에 대한 모바일 오프라인 설정을 한 후, 테스트와 조정을 시작할 때입니다. Power Apps 모바일 또는 필드 서비스 모바일 을 사용하여 앱이 오프라인일 때 어떻게 작동하는지 확인하세요. Windows의 경우 Microsoft Store에서 Power Apps Windows용 앱을 찾아 모바일 기기가 없어도 반복해서 사용할 수 있습니다.

이 단계에서는 테이블을 추가하고 기존 테이블에 필터를 적용하여 오프라인 프로필 최적화 지침에 따라 올바른 데이터가 앱에 다운로드되었는지 확인합니다.

결과

데이터를 다운로드한 후 모든 표와 양식이 오프라인에서 작동하는지, 다운로드 크기가 적절한지 확인합니다.

중요

모델 기반 앱의 메타데이터는 앱이 시작될 때 검색됩니다. 즉, 양식 구성 요소나 보기와 같은 앱의 구성 요소를 변경하는 경우 프로필에 변경 사항이 반영되도록 하려면 앱을 다시 시작해야 합니다.

2단계: 사용자 테스트

몇 명의 사용자에게 실제 데이터로 앱을 테스트하도록 요청합니다. 오프라인 프로필이 다양한 유형의 사용자에 맞게 확장되고 다양한 저장 용량을 가진 디바이스에서 작동하는지 확인하십시오. 각 사용자의 기기 상태 페이지(모델 기반 앱에서 바로 사용 가능)를 확인하세요. 자세한 내용은 오프라인 템플릿 및 오프라인 상태 아이콘 사용 을 참조하세요. 오프라인 프로필의 필터를 조정하여 다운로드되는 데이터의 양을 늘리거나 줄입니다.

다운로드 성공 후 모바일 앱의 오프라인 상태 페이지 스크린샷.

결과

오프라인 프로필이 실제 사용 사례에 맞게 확장 가능한지 확인합니다. 그렇지 않은 경우, 오프라인 프로필을 최적화하세요.

3단계: 배포

조직의 나머지 부분에 앱을 배포합니다.

결과

롤아웃에서 각 사용자 클래스가 성공적으로 동기화되고 오프라인에서 작업할 수 있는지 확인합니다.

사용자에게 필요한 데이터를 놓치지 마십시오.

사용자에게 필요한 모든 데이터가 있는지 테스트합니다. 앱이 온라인일 때와 오프라인일 때 사용 가능한 데이터를 비교합니다. 디바이스가 비행기 모드에 있는 상태에서 보기 및 양식이 온라인 웹 브라우저에서와 동일한 데이터를 표시하는지 확인하십시오. 차이점이 있는 경우 보기에서 필터를 조정하거나 오프라인 프로필에서 필터를 조정하십시오.

  • 비즈니스 프로세스 흐름: 양식에 비즈니스 프로세스 흐름가 포함되어 있는 경우 비즈니스 프로세스 흐름 테이블을 추가하세요. 자세한 내용은 지원되는 기능 을 참조하세요.

  • 파일 및 이미지: 오프라인 프로필에 파일과 이미지가 포함되어 있는 경우 해당 표를 추가하세요. 자세한 내용은 오프라인 모델 기반 앱에서 파일 및 이미지 구성 또는 오프라인 캔버스 앱에서 파일 및 이미지 구성 을 참조하세요. 사용자 지정 필터를 사용하여 중요한 파일의 다운로드를 제한하세요.

  • 타임라인: 타임라인 컨트롤의 메모(모델 기반 앱에만 해당)를 오프라인에서도 사용할 수 있게 하려면 오프라인 프로필에 메모 테이블과 사용자 테이블을 추가합니다. 사용자가 이미지와 비디오를 업로드할 경우 메모가 커질 수 있으므로, 메모 표에 사용자 지정 필터를 적용하여 다운로드 시간을 제한하세요.

    중요

    사용자가 타임라인 컨트롤에 4MB보다 큰 파일을 업로드하면 데이터 다운로드가 느려질 수 있습니다. 사용자가 4MB보다 큰 파일을 업로드해야 하는 경우 Field Service의 빠른 메모 컨트롤 또는 타임라인 대신 파일/이미지를 사용하여 성능을 개선하십시오.

모바일 오프라인 동기화에 대한 팁

  • 모바일 장치와의 Mobile offline 동기화가 주기적으로 일어납니다. 동기화에는 Azure 네트워크 대기 시간, 동기화에 설정되는 데이터 양 및 모바일 네트워크 속도에 따라 몇 분 가량 소요될 수 있습니다. 동기화 중에도 사용자는 모바일 앱을 사용할 수 있습니다.

  • 초기 메타데이터 다운로드 시간은 오프라인으로 구성된 앱 모듈의 총 테이블 수에 따라 결정됩니다. 최종 사용자 경험을 최적화하는 데 필요한 테이블과 앱 모듈만 오프라인에서 구성해야 합니다.

  • 오프라인으로 작업하려는 뷰가 오프라인 사용을 위해 구성되지 않은 테이블을 참조하지 않는지 확인하세요. 예를 들어, 계정 이 오프라인 프로필에 있다고 가정하면, 연락처 가 프로필에 없을 때 기본 연락처를 참조하는 계정 보기는 사용할 수 없습니다.

  • 다음 동기화 중에 사용자의 보안 권한 변경이 업데이트됩니다. 그 때까지는 사용자가 이전 보안 권한에 따라 데이터에 계속해서 액세스할 수 있지만 서버에 대한 동기화 중에 변경하는 내용은 유효성 검사됩니다. 행을 변경할 수 있는 권한이 없으면 오류가 발생하고 행이 생성, 업데이트 또는 삭제되지 않습니다.

  • 행을 볼 수 있는 사용자 권한에 대한 변경은 다음 동기화까지 모바일 장치에서 효력을 발생하지 않습니다.

  • 모바일 오프라인은 필드 수준 보안 및 필드 공유 를 제외하고 모바일 앱의 보안 모델과 계층적 보안 모델을 준수합니다.

참조 항목