오프라인용 앱 개발 모범 사례
이 문서에서는 오프라인 사용을 위해 구성된 앱 사용자에게 최상의 환경을 만드는 방법에 대한 권장 사항을 제공합니다.
- 오프라인 사용을 위해 캔버스 앱을 구성하는 경우 앱이 데이터 원본에서 데이터를 가져오는 방법을 최적화해야 합니다. 자세히 알아보기: 캔버스 앱에서 최고의 오프라인 사용자 경험을 만드는 방법
- 오프라인에서 작동하려면 앱이 처음에 네트워크 연결에 관계없이 독립적으로 작동할 수 있도록 리소스와 데이터를 포함한 모든 필수 자산을 다운로드해야 합니다. 이 프로세스는 앱을 처음 사용할 때 발생하는 일회성 설정입니다. 작업 이 초기 다운로드 속도는 기기에 다운로드되는 데이터 양에 영향을 받는데, 이는 오프라인 프로필 설정과 앱의 환경 내에서 사용자가 사용할 수 있는 데이터 양에 따라 결정됩니다. 원활한 초기 경험을 위해 오프라인 앱 출시를 계획하는 것이 좋습니다.
캔버스 앱에서 최고의 오프라인 사용자 경험을 만드는 방법
특정 시나리오에서 빠른 사용자 경험을 만들려면 다음 권장 사항을 활용하세요.
시나리오 | 권장되지 않는 접근 방식 | 권장되는 접근 방식 |
---|---|---|
관련 테이블 정보를 갤러리에 표시합니다. | 조회를 사용하여 데이터를 가져옵니다. | 관련 테이블의 열이 포함된 뷰를 사용합니다. |
많은 레코드로 필터링 가능한 갤러리를 만듭니다. | Dataverse에서 레코드를 로드하고 컬렉션에 저장합니다. 갤러리의 항목을 필터링된 컬렉션으로 설정합니다. | 갤러리의 항목을 Dataverse에서 필터링된 데이터로 직접 설정합니다. |
여러 레코드를 업데이트합니다. | 레코드를 반복하고 개별적으로 패치합니다. | 모든 수정 사항이 포함된 컬렉션을 대량 패치합니다. |
Monitor로 모바일 오프라인 캔버스 앱 진단
Monitor는 앱이 실행될 때 앱에서 발생하는 모든 주요 활동을 기록하여 앱이 무엇을 하고 어떻게 수행하는지에 대한 심층적인 보기를 제작자에게 제공하는 도구입니다. 모바일 앱 세션을 통해 연결 모니터링 하여 문제를 더 빠르게 진단하고 해결할 수 있습니다.
오프라인 앱 출시 계획
중요
자동 생성된 오프라인 프로필 (캔버스 앱에서만 사용 가능)을 사용 중이고 첫 번째 동기화에 너무 많은 시간이 걸리는 경우, 다음 모범 사례에 따라 수동 오프라인 프로필을 만들어야 합니다.
3단계에 걸쳐 오프라인 앱을 개발하고 출시하세요.
1단계: 개발 및 반복
캔버스 앱에 대한 모바일 오프라인 설정을 하거나 모델 기반 앱에 대한 모바일 오프라인 설정을 한 후, 테스트와 조정을 시작할 때입니다. Power Apps 모바일 또는 필드 서비스 모바일 을 사용하여 앱이 오프라인일 때 어떻게 작동하는지 확인하세요. Windows의 경우 Microsoft Store에서 Power Apps Windows용 앱을 찾아 모바일 기기가 없어도 반복해서 사용할 수 있습니다.
이 단계에서는 테이블을 추가하고 기존 테이블에 필터를 적용하여 오프라인 프로필 최적화 지침에 따라 올바른 데이터가 앱에 다운로드되었는지 확인합니다.
결과
데이터를 다운로드한 후 모든 표와 양식이 오프라인에서 작동하는지, 다운로드 크기가 적절한지 확인합니다.
중요
모델 기반 앱의 메타데이터는 앱이 시작될 때 검색됩니다. 즉, 양식 구성 요소나 보기와 같은 앱의 구성 요소를 변경하는 경우 프로필에 변경 사항이 반영되도록 하려면 앱을 다시 시작해야 합니다.
2단계: 사용자 테스트
몇 명의 사용자에게 실제 데이터로 앱을 테스트하도록 요청합니다. 오프라인 프로필이 다양한 유형의 사용자에 맞게 확장되고 다양한 저장 용량을 가진 디바이스에서 작동하는지 확인하십시오. 각 사용자의 기기 상태 페이지(모델 기반 앱에서 바로 사용 가능)를 확인하세요. 자세한 내용은 오프라인 템플릿 및 오프라인 상태 아이콘 사용 을 참조하세요. 오프라인 프로필의 필터를 조정하여 다운로드되는 데이터의 양을 늘리거나 줄입니다.
결과
오프라인 프로필이 실제 사용 사례에 맞게 확장 가능한지 확인합니다. 그렇지 않은 경우, 오프라인 프로필을 최적화하세요.
3단계: 배포
조직의 나머지 부분에 앱을 배포합니다.
결과
롤아웃에서 각 사용자 클래스가 성공적으로 동기화되고 오프라인에서 작업할 수 있는지 확인합니다.
사용자에게 필요한 데이터를 놓치지 마십시오.
사용자에게 필요한 모든 데이터가 있는지 테스트합니다. 앱이 온라인일 때와 오프라인일 때 사용 가능한 데이터를 비교합니다. 디바이스가 비행기 모드에 있는 상태에서 보기 및 양식이 온라인 웹 브라우저에서와 동일한 데이터를 표시하는지 확인하십시오. 차이점이 있는 경우 보기에서 필터를 조정하거나 오프라인 프로필에서 필터를 조정하십시오.
앱에 필요한 경우 관련 테이블 추가
비즈니스 프로세스 흐름: 양식에 비즈니스 프로세스 흐름가 포함되어 있는 경우 비즈니스 프로세스 흐름 테이블을 추가하세요. 자세한 내용은 지원되는 기능 을 참조하세요.
파일 및 이미지: 오프라인 프로필에 파일과 이미지가 포함되어 있는 경우 해당 표를 추가하세요. 자세한 내용은 오프라인 모델 기반 앱에서 파일 및 이미지 구성 또는 오프라인 캔버스 앱에서 파일 및 이미지 구성 을 참조하세요. 사용자 지정 필터를 사용하여 중요한 파일의 다운로드를 제한하세요.
타임라인: 타임라인 컨트롤의 메모(모델 기반 앱에만 해당)를 오프라인에서도 사용할 수 있게 하려면 오프라인 프로필에 메모 테이블과 사용자 테이블을 추가합니다. 사용자가 이미지와 비디오를 업로드할 경우 메모가 커질 수 있으므로, 메모 표에 사용자 지정 필터를 적용하여 다운로드 시간을 제한하세요.
중요
사용자가 타임라인 컨트롤에 4MB보다 큰 파일을 업로드하면 데이터 다운로드가 느려질 수 있습니다. 사용자가 4MB보다 큰 파일을 업로드해야 하는 경우 Field Service의 빠른 메모 컨트롤 또는 타임라인 대신 파일/이미지를 사용하여 성능을 개선하십시오.
모바일 오프라인 동기화에 대한 팁
모바일 장치와의 Mobile offline 동기화가 주기적으로 일어납니다. 동기화에는 Azure 네트워크 대기 시간, 동기화에 설정되는 데이터 양 및 모바일 네트워크 속도에 따라 몇 분 가량 소요될 수 있습니다. 동기화 중에도 사용자는 모바일 앱을 사용할 수 있습니다.
초기 메타데이터 다운로드 시간은 오프라인으로 구성된 앱 모듈의 총 테이블 수에 따라 결정됩니다. 최종 사용자 경험을 최적화하는 데 필요한 테이블과 앱 모듈만 오프라인에서 구성해야 합니다.
오프라인으로 작업하려는 뷰가 오프라인 사용을 위해 구성되지 않은 테이블을 참조하지 않는지 확인하세요. 예를 들어, 계정 이 오프라인 프로필에 있다고 가정하면, 연락처 가 프로필에 없을 때 기본 연락처를 참조하는 계정 보기는 사용할 수 없습니다.
다음 동기화 중에 사용자의 보안 권한 변경이 업데이트됩니다. 그 때까지는 사용자가 이전 보안 권한에 따라 데이터에 계속해서 액세스할 수 있지만 서버에 대한 동기화 중에 변경하는 내용은 유효성 검사됩니다. 행을 변경할 수 있는 권한이 없으면 오류가 발생하고 행이 생성, 업데이트 또는 삭제되지 않습니다.
행을 볼 수 있는 사용자 권한에 대한 변경은 다음 동기화까지 모바일 장치에서 효력을 발생하지 않습니다.
모바일 오프라인은 필드 수준 보안 및 필드 공유 를 제외하고 모바일 앱의 보안 모델과 계층적 보안 모델을 준수합니다.