Appwrite for flatter

13241 단어 appwrite
소개하다.
다음 글은 Appwrite의 Flatter SDK를 사용하여 본 컴퓨터 프로그램을 구축하는 방법을 소개할 것이다.Appwrite는 현대 응용 프로그램 구축에 필요한 흔하고 복잡하며 반복적인 작업의 복잡성을 추상화하기 위한 종합적인 백엔드 서버입니다.
장치
Appwrite는 Docker 컨테이너 세트로 구성된 자체 관리 백엔드 서버입니다.Docker CLI를 실행할 수 있는 모든 운영 체제에서 Appwrite를 설치하고 실행할 수 있습니다.선택한 로컬 데스크톱이나 클라우드 공급자에서 Appwrite를 사용할 수 있습니다.
시스템 요구 사항:
Appwrite의 설계 목적은 소형과 대형 배치에서 모두 잘 작동하도록 하는 것이다.Appwrite를 실행하려면 최소 CPU 커널 1개와 2GB 메모리, Docker를 지원하는 운영 체제가 필요합니다.
Docker를 사용하여 설치하려면 다음과 같이 하십시오.
Appwrite 서버를 실행하기 시작하는 가장 간단한 방법은 터미널에서 Docker 설치 도구를 실행하는 것입니다.설치 명령을 실행하기 전에 호스트에 Docker CLI가 설치되어 있는지 확인합니다.
Unix:
docker run -it --rm \
    --volume /var/run/docker.sock:/var/run/docker.sock \
    --volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
    --entrypoint="install" \
    appwrite/appwrite:0.11.0
창문:
Docker가 있는 Windows에서 Appwrite를 실행하려면 Hyper-V 및 Windows 기능이 활성화되어야 합니다.이러한 기능이 없으면 Virtualbox를 사용하여 가상 시스템에서 Appwrite를 실행하는 Docker Toolbox를 설치할 수 있습니다.
docker run -it --rm ^
    --volume //var/run/docker.sock:/var/run/docker.sock ^
    --volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
    --entrypoint="install" ^
    appwrite/appwrite:0.11.0
docker run -it --rm ,
    --volume /var/run/docker.sock:/var/run/docker.sock ,
    --volume ${pwd}/appwrite:/usr/src/code/appwrite:rw ,
    --entrypoint="install" ,
    appwrite/appwrite:0.11.0
설명서(docker compose.yml 사용):
고급 Docker 사용자에게는 수동 설치가 더 익숙한 것 같습니다.Appwrite를 수동으로 설정하려면 Appwrite base docker compose를 다운로드합니다.yml 및.환경 파일.다운로드가 완료되면 필요에 따라 에서 다른 환경 변수를 업데이트합니다.env 파일 및 다음 Docker 명령을 사용하여 Appwrite 스택을 시작합니다.
docker-compose up -d --remove-orphans
Docker 설치가 완료되면 브라우저의 컴퓨터 호스트 이름이나 IP 주소로 이동하여 Appwrite 콘솔에 액세스합니다.비linux 본체 호스트에서 설치가 완료된 후 서버가 시작되려면 몇 분이 걸릴 수 있음을 주의하십시오.
개술
Appwrite는 개발 플랫폼으로 간단하지만 기능이 강한 API와 관리 컨트롤러를 제공하여 다음 프로젝트를 신속하게 시작하고 실행할 수 있습니다.
이 자습서는 Appwrite 제품을 사용하여 다음 프로젝트를 구축하는 데 도움을 줍니다.시작하기 전에 Appwrite 설치 가이드를 따르고 호스트나 서버에 Appwrite 서버 실례를 설치하고 실행했는지 확인하십시오.
첫 번째 Appwrite 항목 만들기
새 Appwrite 콘솔로 이동한 후 위쪽 탐색 제목의 + 아이콘이나 콘솔 홈 페이지의 '항목 만들기' 단추를 누르십시오.항목의 이름을 선택하고 '만들기' 를 누르면 시작합니다.
너의 떨림 플랫폼 추가
SDK를 초기화하고 Appwrite 서비스와 상호작용을 시작하려면 프로젝트에 새로운 떨림 플랫폼을 추가해야 합니다.새 플랫폼을 추가하려면 Appwrite 콘솔에서 이전 단계에서 만든 항목을 선택한 다음 '플랫폼 추가' 단추를 누르십시오.
옵션에서 새로운 떨림 플랫폼을 추가하고 응용 프로그램 인증서를 추가하는 것을 선택하십시오.Appwrite Flatter SDK는 현재 안드로이드, iOS, Linux, Mac OS, 웹 및 Windows를 위한 어플리케이션을 지원합니다.
만약 여러 장치를 위해 떨림 프로그램을 구축하려면, 각기 다른 장치를 위해 이 과정을 따라야 한다.
안드로이드
Android의 경우 프로그램 이름과 패키지 이름을 먼저 추가합니다. 패키지 이름은 보통 프로그램 단계에서 구축된 응용 프로그램 Id입니다.그레델 서류.새 응용 프로그램 플랫폼을 등록하면 응용 프로그램이 Appwrite API와 통신할 수 있습니다.
Appwrite OAuth 리셋 URL을 포획하기 위해서는 안드로이드 매니페스트 tag, along side the existing 표시에 다음 이벤트를 추가해야 합니다.xml.[PROJECT ID] 문자열을 실제 Appwrite 프로젝트 ID로 대체해야 합니다. Appwrite 콘솔의 프로젝트 설정 화면에서 Appwrite 프로젝트 ID를 찾을 수 있습니다.
<manifest ...>
  ...
  <application ...>
    ...
    <!-- Add this inside the `<application>` tag, along side the existing `<activity>` tags -->
    <activity android:name="com.linusu.flutter_web_auth.CallbackActivity" >
      <intent-filter android:label="flutter_web_auth">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="appwrite-callback-[PROJECT_ID]" />
      </intent-filter>
    </activity>
  </application>
</manifest>
네트워크 운영 체제
iOS의 경우 먼저 응용 프로그램 이름과 번들 ID를 추가하면 Xcode에서 응용 프로그램 주요 대상의 일반 탭에서 번들 식별자를 찾을 수 있습니다.
Appwrite SDK는 iOS 12+에서는 ASWeb Authentication Session을, iOS 11에서는 SFAuthentication Session을 사용하여 OAuth 인증을 허용합니다.시뮬레이터나 실제 장치에서 응용 프로그램을 구축하려면 Xcode의 iOS 배포 대상을 iOS>=11로 변경해야 합니다.

Linux
리눅스에 대해 프로그램 이름과 패키지 이름을 추가합니다. 패키지 이름은 보통pubspec의 이름입니다.yaml 파일.올바른 패키지 이름을 찾지 못하면 linux에서 프로그램을 실행하고 적절한 이상 처리를 통해 요청을 보내면 오류 메시지에 필요한 프로그램 id를 받아야 합니다.
Mac OS
Mac OS의 경우 응용 프로그램 이름과 번들 ID를 추가하면 Xcode에서 응용 프로그램 주요 대상의 일반 탭에서 번들 식별자를 찾을 수 있습니다.
그물 모양의 물건
Appwrite 0.7과 Appwrite Flatter SDK 0.3.0은 Flatter 웹에 대한 지원을 추가했습니다.Appwrite와 성공적으로 통합된 웹 응용 프로그램을 구축하려면 Appwrite 프로젝트의 대시보드에 웹 플랫폼을 추가하고 웹 사이트가 Appwrite API와 통신할 영역을 열거하십시오.
창문.
Windows에 프로그램 이름과 패키지 이름을 추가하려면 패키지 이름은pubspec의 이름입니다.yaml 파일.정확한 패키지 이름을 찾지 못하면 윈도우즈에서 프로그램을 실행하고 적절한 이상 처리를 통해 요청을 보내면 오류 메시지에 필요한 프로그램 id를 가져와야 합니다.
Appwrite Flatter SDK 가져오기
패키지의 pubspec에 Appwrite SDK를 추가합니다.yaml 파일(보기 예):
dependencies:
  appwrite: ^2.0.3
Dart 패키지 관리자를 사용하여 터미널에서 SDK를 설치할 수도 있습니다.
pub get appwrite
SDK 초기화
프로젝트 설정 페이지에서 찾을 수 있는 SDK 코드를 프로젝트 ID로 초기화합니다.
import 'package:appwrite/appwrite.dart';

Client client = Client();

client
    .setEndpoint('https://localhost/v1') // Your Appwrite Endpoint
    .setProject('5e8cf4f46b5e8') // Your project ID
    .setSelfSigned(status: true) // For self signed certificates, only use for development
;
새로운 Appwrite 실례에 API 호출을 보내기 전에 안드로이드나 iOS 시뮬레이터가 Appwrite 서버 호스트 이름이나 IP 주소에 대한 네트워크 접근 권한을 가지고 있는지 확인하십시오.
시뮬레이터나 모바일 장치에서 Appwrite에 연결하려고 할 때 localhost는 로컬 Appwrite 실례가 아닌 장치나 시뮬레이터의 호스트 이름입니다.localhost를 Appwrite 노드의 호스트 이름으로 개인 IP로 바꿔야 합니다.Appwrite API를 에이전트하려면 ngrok 같은 서비스를 사용할 수도 있습니다.
너의 첫 번째 요구를 제기하다
SDK 객체를 설정한 후 Appwrite 서비스에 액세스하여 보낼 요청을 선택합니다.SDK 문서나 API 참조 섹션에서 사용하려는 모든 서비스 방법의 전체 문서를 찾을 수 있습니다.
// Register User
Account account = Account(client);

Response user = await account
    .create(
        email: '[email protected]',
        password: 'password',
        name: 'My Name'
    );
변화에 귀를 기울이다
Appwrite에서 변경 사항을 실시간으로 들으려면 다양한 채널을 구독하고 밀리초 안에 업데이트를 받을 수 있습니다.여기에서 완전한 실시간 문서를 찾을 수 있습니다.
// Subscribe to files channel
final realtime = Realtime(client);
final subscription = realtime.subscribe(['files']);

subscription.stream.listen((response) {
    if(response.event === 'storage.files.create') {
        // Log when a new file is uploaded
        print(response.payload);
    }
})
전체 예
import 'package:appwrite/appwrite.dart';

Client client = Client();

client
    .setEndpoint('https://localhost/v1') // Your Appwrite Endpoint
    .setProject('5e8cf4f46b5e8') // Your project ID
    .setSelfSigned(true) // For self signed certificates, only use for development
;

// Register User
Account account = Account(client);

Response user = await account
    .create(
        email: '[email protected]',
        password: 'password',
        name: 'My Name'
    );

// Subscribe to files channel
final realtime = Realtime(client);
final subscription = realtime.subscribe(['files']);

subscription.stream.listen((response) {
    if(response.event === 'storage.files.create') {
        // Log when a new file is uploaded
        print(response.payload);
    }
})

좋은 웹페이지 즐겨찾기