기본 APP 개발 기본 APP 개발은 우리가 전통적인 APP 개발 모델 (Native APP 개발 모델) 이라고 부르는 것입니다. 이러한 개발에는 IOS, Android 등 모바일 운영 체제에 따라 다른 언어와 프레임워크가 필요합니다. 이 모드는 일반적으로 "클라우드 서버 데이터 +APP 응용 프로그램 클라이언트" 로 구성되며 APP 응용 프로그램의 모든 UI 요소, 데이터 내용, 논리 프레임워크가 휴대폰 끝에 설치됩니다. 웹 앱 개발 웹 앱 개발은 프레임워크 App 개발 모델 (HTML5 APP 프레임워크 개발 모델) 으로 플랫폼 간 장점을 제공합니다. 이 모드는 일반적으로 "HTML5 클라우드 웹 사이트 +APP 응용 프로그램 클라이언트" 의 두 부분으로 구성됩니다. App 응용 프로그램 클라이언트는 응용 프로그램의 프레임워크 부분만 설치하면 되며, app 를 열 때마다 응용 프로그램 데이터가 휴대폰 사용자에게 제공됩니다. 기본 APP 개발과 웹 앱 개발 모델의 차이점 웹 앱은' HTML5 클라우드 사이트' 와' APP 클라이언트' 를 개발해야 한다. 쿤밍 Tiantian Network Company 는 이러한 APP 응용 프로그램이 다음과 같은 특징을 가지고 있다고 요약했습니다. (1) APP 를 열 때마다 APP 프레임워크를 통해 클라우드 웹 사이트에서 UI 와 데이터를 가져와야 합니다. (2) 휴대폰 사용자가 인터넷에 접속할 수 없다면 앱 앱의 데이터에 액세스할 수 없다. (3) 프레임 APP 는 휴대폰 단말기의 하드웨어 장치 (음성, 카메라, 문자 메시지, GPS, Bluetooth, 중력 감지 등) 를 호출할 수 없습니다. (4) (4) 프레임 앱의 액세스 속도는 휴대폰 단말기에 의해 제한되며, 사용할 때마다 일정한 휴대폰 인터넷 트래픽을 소모한다. (5) 프레임 APP 응용 프로그램의 설치 패키지는 작고 프레임 파일만 포함되어 있으며, 많은 UI 요소 및 데이터 내용은 클라우드에만 저장됩니다. (6)APP 사용자는 매번 최신 실시간 클라우드 데이터에 액세스할 수 있습니다. (7)APP 사용자는 클라우드와의 실시간 데이터 상호 작용을 위해 APP 를 자주 업데이트할 필요가 없습니다. 적용 가능한 기업: 전자 상거래, 금융, 뉴스 정보, 기업 그룹은 자주 업데이트되는 앱 앱이 필요합니다. Native App 은 클라우드 서버 데이터 센터 및 App 클라이언트를 개발해야 합니다. 쿤밍 Tiantian Network Company 는 이러한 APP 응용 프로그램이 다음과 같은 특징을 가지고 있다고 요약했습니다. (1) 최신 APP 기능을 얻을 때마다 APP 응용 프로그램을 업그레이드해야 합니다. (native APP 응용 프로그램의 설치 패키지는 UI 요소, 데이터 내용, 논리 프레임 등 비교적 큽니다. (3) 휴대폰 사용자는 인터넷 접속 없이 앱 앱에서 이전에 다운로드한 데이터에 액세스할 수 있다. (4) 기본 APP 는 하드웨어 장치 (음성, 카메라, 문자 메시지, GPS, Bluetooth, 중력 감지 등) 를 호출할 수 있습니다. ) 휴대 전화 단말기. (APP 는 각 응용 프로그램 스토어에 제출되어 검토를 받을 때마다 새로운 업데이트 기능을 적용합니다. 기업: 게임, 전자잡지, 관리애플리케이션, 사물인터넷 등 프로그램 프레임워크를 자주 업데이트할 필요가 없는 앱 앱 앱. Web App 및 Native App 의 개발 모델은 어떻게 선택합니까? 모바일 네트워크는 어디에나 있습니다. 현재는 다양한 장치 액세스를 지원하는 유일한 플랫폼입니다. 데스크톱 웹과 마찬가지로 모바일 웹은 다양한 표준 프로토콜을 지원합니다. 모바일 웹은 개발자가 모바일 애플리케이션을 게시하는 유일한 플랫폼이기도 하며, 다양한 모바일 상호 작용을 데스크톱 작업에 효과적으로 연결합니다. Native App 의 개발은 장치의 특성을 최대한 활용할 수 있으며, 이는 종종 웹 브라우저에서 수행할 수 없는 경우가 많기 때문에 Native App 은 제품 자체에 가장 적합한 선택입니다. 다음 섹션에서는 Native App 의 몇 가지 주요 기능에 대해 설명합니다. 언제 기본 App 1 을 선택해야 합니까? 개발자가 모바일 웹 앱을 유료할 수 없다는 규정은 없지만, 어떤 이유로 사람들은 웹 앱을 유료할 수 없거나 유료해서는 안 된다고 생각하는 경우가 많다. 역사적인 이유로 모바일 장치의 결제 서비스에는 두 가지 큰 장애물이 있습니다. 2. 결제 방법은 모바일 장치에 신용 카드 번호를 입력하는 것이 번거롭고 많은 구형 장치에도 보안이 없습니다. 일반적인 방법은 응용 프로그램에 요금이 필요한 경우 운영자와 합의하여 운영자가 서비스 요금을 받도록 하는 것입니다. 이것은 또한 여러 사업자와 협력해야 한다는 것을 의미한다. 많은 휴대전화 사용자들이 청소년과 같은 신용카드를 전혀 가지고 있지 않을 수도 있기 때문에 일반적으로 선호됩니다. 또 다른 방법은 사용자의 신용 카드 정보를 안전한 웹 사이트에 저장하는 것입니다. 사용자는 이 사이트에 로그인하여 응용 프로그램 서비스를 구입할 수 있습니다. 이 프로세스는 사용자가 자신의 모바일 장치를 통해 직접 서비스를 구입할 수 없다는 것을 의미하므로 특히 이상적이지 않습니다. 3. 강제로 이동사업자로 나누면 커미션이 있습니다. 통신업체나 모바일 장치를 통해 app 를 발표하는 것은 App 에 유료 메커니즘을 제공합니다. 이러한 사업자와 모바일 장치는 수입의 일부를 인출한 다음 나머지 부분을 애플리케이션 개발자에게 넘깁니다. 즉, 개발자는 시장 규칙을 준수해야 합니다. 일반적으로 운영자의 시장 법칙에 적응하기가 어렵고, 이는 대량의 인적 자원을 필요로 한다. 비교하면, 모바일 기기의 시장 규칙은 훨씬 간단하지만, 많은 어려움이 있다. 운영자와 모바일 장치 개발자의 이익을 방해하는 응용 및 서비스는 차단됩니다. 예전에는 사업자나 모바일 장비 개발자가 운영하는 사이트가 아니었고 수입이 너무 눈에 띄면 폐쇄된 운명을 피할 수 없었지만 요즘은 이런 일이 거의 일어나지 않았다. 만약 당신이 당신의 기본 앱에 대해 요금을 부과하고 싶다면, 당신은 이 현실을 받아들여야 합니다. 당신은 다른 사람의 시장 규칙을 준수하고 이익의 일부를 포기해야 합니다. 4. 게임 개발 모바일 게임 (모바일 게임이 모바일 시장에서 가장 큰 부분) 을 개발하려면 기본 앱을 개발해야 합니다. 게임은 많은 자원을 사용하며 많은 장비 API 또는 플랫폼 API 를 사용해야 합니다. 웹 기술로 완전히 개발된 게임들이 몇 개 있지만, 어느 정도의 시장 점유율이 있지만, Native App 의 시장 점유율에 비하면 보잘것없다. (윌리엄 셰익스피어, Northern Exposure (미국 TV 드라마), 스포츠명언) 게임 사용자는 응용 프로그램의 시각 및 조작 효과에 대한 요구가 매우 높다. 모바일 웹은 몇 가지 시뮬레이션 경험을 제공하지만 사용자의 요구를 충족시킬 수는 없습니다. 휴대폰 게임을 개발할 때, 너는 너의 앱이 어떤 플랫폼을 지원해야 하는지 신중하게 고려해야 한다. 다행히 여러 플랫폼으로 게임을 푸시하는 데 도움이 될 수 있는 많은 도구들이 있지만, 이러한 임무를 완수하려면 많은 인력과 물력이 필요합니다. 5. 위치 지정 기능을 사용하는 다음 기능은 GPS 또는 신호 감지를 통해 사용자의 현재 위치 정보를 확인할 수 있는 위치 지정 기능입니다. 과거 사용자의 위치 정보는 Native App 의 API 를 통해서만 볼 수 있었으며, 현재 W3C 지리적 위치 API 에는 대부분의 주요 모바일 브라우저가 포함되어 있습니다. 사용자의 위치 정보는 iPhone 또는 Android 또는 Opera 또는 Mozilla 브라우저가 설치된 장치와 같은 WebKit 이 설치된 장치에서 얻을 수 있습니다. 나는 위치 지정 기능이 네트워크 기술에 많은 새로운 응용을 가져다 줄 것이라고 믿는다. 웹 브라우저를 합리적으로 사용할 수 있다면, 웹 개발자는 사용자의 위치 정보 등을 이용하여 더욱 흥미로운 앱을 개발할 수 있다. 기술적으로는 어렵지 않지만 프라이버시 조례의 제한을 받는다. 우리는 웹 브라우저를 사용자들로 월드 와이드 웹 입구에 들어갔다. 위치 지정 기능을 추가한다는 것은 민감한 정보를 웹 사이트에 도입하는 것을 의미하며 심각한 결과를 초래할 수 있습니다. 그러나 위치 인식 응용 프로그램에 표시된 위치 정보는 사용자가 승인해야 하며, 사용자는 당연히 응용 프로그램이 자신의 위치 정보를 게시하는 것을 금지할 수 있습니다. 6. 카메라를 사용하면 애플리케이션에 풍부한 가능성을 제공할 수 있습니다. 과거에는 모바일 MMS (멀티미디어 메시지 서비스) 가 모바일 사진 처리에 사용되었습니다. 즉, 다음 사진을 찍은 후에는 MMS 를 사용하여 서버에 보내야 합니다. 서버는 사진을 적절히 처리하고 완료 결과를 알려 줍니다. 이 과정은 시간이 많이 걸리고, 상당히 복잡하며, 신뢰성도 보장되지 않는다. 카메라를 방문하면 기본 응용 프로그램 개발자가 사진 촬영 과정을 단순화할 수 있다. 사용자는 클라이언트에서 직접 사진을 간단하게 처리할 수 있으며, 필요할 때만 서버에 사진을 업로드하고 신뢰할 수 있는 HTTP 를 통해 전송할 수 있습니다. W3C 는 카메라에 액세스하는 API 를 개발하고 있지만 아직 브라우저에 정식으로 통합되지 않았습니다. 많은 종류의 휴대폰 앱에서 카메라는 스냅샷 앱, 단편 촬영 앱 등 매우 유용하다. 카메라는 많은 중요한 순간을 포착하는 데 사용될 수 있다. 가까운 장래에, 우리는 카메라로 다음 로고만 찍으면 앱이 로고의 언어 변환을 자동으로 완성할 수 있다는 것을 볼 수 있다. 이 기술은 이미 일본에서 보급되었다. 7. 센서 사용 이제 점점 더 많은 모바일 장치에 장치의 물리적 속도와 중력을 감지하고 감지된 데이터 결과를 장치로 전송하는 센서 기능이 추가되었습니다. 이 장치는 일반적으로 설정 뒤집기 여부를 감지하는 데 사용되며 응용 프로그램은 수신된 정보에 따라 화면 방향을 자동으로 조정합니다. 센서는 사용자가 장치와 상호 작용할 때 사실감을 높이는 데 도움이 될 수 있습니다. 대부분의 모바일 장치는 휴대용 장치이며, 응용 프로그램은 화면 뒤집기 또는 물리적 이동 감지와 같은 장치 방향에 따라 컨텐츠 화면을 조정하고 사용자의 환경을 추측할 수 있습니다. 간단한 예를 들어, 사용자가 걷고 있는 경우 센서는 느린 이동이나 속도를 감지할 수 있으며, 이를 통해 사용자에게 큰 글꼴의 사용자 인터페이스를 제공하여 사용자가 화면의 내용을 더 쉽게 볼 수 있도록 합니다. 그러나 개발자는 센서에 지나치게 의존해서는 안 된다. 센서가 어떤 상호 작용이 의도적인지, 어떤 것이 무의미한지 구분할 수 없기 때문이다. 모든 모바일 상호 작용은 "전송 테스트" 를 통과해야 합니다. 너의 상호 작용을 설계할 때, 너는 붐비는 자동차나 기차에서의 사용자 장면을 고려해야 한다. 사용자가 붐비는 지하철에 있거나 운전할 때 응용 프로그램이 사용자가 모바일 장치를 흔드는 상황을 제대로 처리할 수 있는지 생각해 보십시오. 일반적으로 대부분의 개발자는 이러한 요소를 고려하지 않습니다. 특정 장면에서 이동 상호 작용을 처리할 수 있도록 각 작업에 대해 백업 시나리오를 설계해야 합니다. 8. 파일 시스템 액세스 응용 프로그램에서 로컬로 데이터를 저장해야 하는 경우 기본 응용 프로그램을 개발해야 합니다. 예를 들어 사용자의 주소록, 전화 또는 이메일 정보 또는 다른 장치에서 얻은 데이터를 저장해야 합니다. 파일 시스템 액세스에는 일반적으로 보안 및 사용자 개인 정보 보호 문제가 포함됩니다. 악성 어플리케이션은 모바일 장치의 데이터를 수정하거나 삭제할 수 있습니다. 바이러스가 있는 어플리케이션은 모바일 장치의 네트워크를 사용하여 다른 많은 휴대폰으로 바이러스를 전파할 수 있습니다. 모바일 애플리케이션 인증 메커니즘을 채택하기 전에 이런 일이 자주 발생한다. 한편, 모바일 장치는 점점 더 비공개로 변하고 있으며, 많은 사용자의 개인 정보, 사용자의 친구 정보 및 비즈니스 정보가 모바일 장치에 저장됩니다. 이러한 개인 정보를 위한 응용 프로그램을 개발하는 것은 좋은 생각이다. 그러나 몇 가지 위험이 있습니다. 모바일 장치에 저장된 데이터를 사용하면 사용자에게 보다 구체적인 서비스를 제공할 수 있습니다. 개발자는 사용자의 개인 데이터가 승인을 받아야 액세스할 수 있다는 점을 기억해야 합니다. 우리는 많은 앱이 사용자 허가 없이 대량의 사용자의 프라이버시 데이터를 사용했고, 스팸이나 낚시 앱으로 오인되는 것을 보았다. 비록 이러한 앱은 원래 매우 유용한 서비스를 제공하고 있음에도 불구하고. (윌리엄 셰익스피어, 스팸이나 낚시, 낚시, 낚시, 낚시, 낚시, 낚시) 너의 응용에 대한 사람들의 오해는 너의 서비스 보급에 영향을 줄 것이다. 운영자가 응용 프로그램에 대한 불만을 너무 많이 받으면 서비스가 종료되거나 다른 응용 프로그램도 연루될 수 있습니다. 파일 시스템을 액세스할 때 사용자의 허가 없이 사용자의 개인 데이터에 액세스하지 않는 것이 중요합니다. 이는 대부분의 응용 프로그램에서 간과되는 경우가 많습니다. W3C 는 모바일 개발자를 위한 관련 표준 API 를 개발하고 있지만 아직 작업이 완료되지 않았습니다. 9. 오프라인 사용자가 Native App 를 개발하는 마지막 이유는 사용자가 오프라인이거나 모바일 네트워크에 액세스하지 못할 수 있기 때문입니다. 이런 상황은 도시에서는 거의 발생하지 않을 수 있으며, 농촌에서도 인터넷 커버리지가 점차 보편화되고 있다. 그러나 단기적인 네트워크 접속 중단은 여전히 자주 발생하므로 애플리케이션은 이러한 상황을 어떻게 처리할 것인지 고려해야 합니다. 사용자가 일반적으로 언제 어디서 응용 프로그램을 사용하는지 생각해 보십시오. 휴대폰 게임이라면 사용자가 비행기에서 이 앱을 사용할 가능성이 높다. 추적 지도 응용프로그램은 일반적으로 네트워크 커버리지가 낮은 원격 지역에서 사용됩니다. 모바일 여행 가이드는 외국 인터넷을 자주 방문하며 로밍과 국제 인터넷 비용을 지불해야 하는 경우가 많습니다. 이때 응용 프로그램은 사용자에게 오프라인 서비스를 제공하는 것이 가장 좋습니다. 이렇게 하면 사용자가 네트워크에 액세스하지 않고도 동일한 서비스를 계속 이용할 수 있습니다. 이제 HTML5 를 지원하는 브라우저도 오프라인 액세스를 수행할 수 있지만 사용자에게는 눈에 띄지 않을 수 있습니다. 점점 더 많은 브라우저가 오프라인 액세스를 지원하기 시작하면서 응용 프로그램은 네트워크 연결이 끊길 때 모바일 웹 응용 프로그램에 계속 액세스할 수 있음을 사용자에게 명시적으로 알려야 합니다. 기본 응용 프로그램은 일반적으로 네트워크 연결이 신뢰할 수 있다고 가정합니다. App 는 일반적으로 네트워크 상태가 좋은 장면만 고려하는데, 당연히 네트워크가 폐쇄되어 있고 네트워크 속도가 충분히 빠르다고 생각한다. 모바일 장치가 양호한 네트워크 환경에서 갑자기 불량한 네트워크 환경으로 들어가는 것은 드문 일이 아니다. 기본 응용 프로그램은 최악의 네트워크 조건에서 테스트해야 합니다. 예를 들어, 사용자는 작업을 시작할 때 전체 신호 오버레이를 유지할 수 있지만 작업이 끝날 때는 네트워크 신호가 없을 수 있습니다. 사용자는 기본 애플리케이션을 설치할 때 온라인 액세스나 오프라인 액세스를 전혀 고려하지 않습니다. 즉, 기본 애플리케이션이 어떠한 상황에서도 제대로 작동할 것으로 기대합니다. 이것도 개발자의 책임이다. 언제 Web App 를 선택해야 합니까? 응용 프로그램이 앞서 언급한 Native App 의 조건 중 하나를 충족하지 않는 한, Native App 를 개발할 필요가 없습니다. 대신 Web App 개발을 선택해야 합니다. 앞서 문장 언급 한 바와 같이, 저는 기본 App 의 옹호자입니다. Native App 는 많은 우수한 기능과 엄청난 시장 잠재력을 가지고 있다고 생각하지만, Web Apps 는 유일하게 오래 지속되는 모바일 컨텐츠, 서비스 및 애플리케이션 개발 플랫폼입니다. 기본 App 는 사용자에게 더 나은 서비스를 제공할 수 없습니다. 오히려 프로젝트 비용을 늘리고, 애플리케이션 배포 채널을 줄이고, app 업그레이드의 복잡성을 높이고, 개발자의 애플리케이션 제어력과 이윤을 약화시키고, 장비에 문제를 일으킬 수 있다. 기본 App 는 개발자에게 단기적인 수익을 가져다 줄 수 있지만 위험이 커서 모바일 시장의 지속 가능한 발전에 영향을 줄 수도 있습니다. 모바일 웹 앱의 장점은 이전 문장 에서 이미 언급되었습니다. 앞서 언급한 기능이 당신이 기본 앱을 선택하는 유일한 이유라면, 휴대폰 브라우저에서 이러한 장애를 막을 수 있다면, 당신은 기본 앱을 계속 선택할 수 있습니까? Palm 의 webOS 는 이미 이러한 문제들을 해결했다. 그들은 WebKit 을 기반으로 전체 모바일 운영 체제를 구축하고 휴대폰을 웹 브라우저로 바꿨다. 소위 "Native Apps" 는 실제로 웹 앱입니다. PhoneGap 은 비슷한 프로젝트입니다. 이 오픈 소스 프로젝트는 개발자가 아이폰, 안드로이드 및 BlackBerry 장치에서 기본 응용 프로그램을 개발하는 데 도움이 되며, 웹 응용 프로그램 호출을 위해 위치 지정 기능 및 파일 시스템과 같은 장치의 기능을 시뮬레이션할 수 있습니다. 이러한 코드는 다양한 장치의 app stores 에서 게시 및 판매할 수 있지만 일반적으로 사용되는 코드와 디자인을 즐길 수 있습니다. 웹 응용 프로그램이 개발됨에 따라 개발자는 로우엔드 모바일 브라우저를 위한 단순화된 버전의 응용 프로그램을 개발할 수 있습니다. 한 번만 개발하면 여러 플랫폼에 배포할 수 있습니다. 모바일 개발 경험이 풍부한 프로그래머에게' 기능이 풍부한 애플리케이션 개발' 을 언급할 때 가장 먼저 떠오르는 것은 기본 앱일 수 있다. 이 아이디어는 여전히 많은 장치에 적용되지만 모바일 웹 응용 프로그램에는 개발자가 호출할 수 있는 충분한 기능 인터페이스가 있습니다. 이를 통해 웹 앱은 Native App 처럼 풍부한 기능과 아름다운 인터페이스를 설계할 수 있을 뿐만 아니라 코드 한 줄을 수정하지 않고도 다양한 플랫폼에서 마이그레이션할 수 있습니다. 오늘날 모바일 장치의 발전에서 모바일 Web Apps 의 혁신은 전례 없는 절정에 이르렀다. (윌리엄 셰익스피어, 모바일, 모바일, 모바일, 모바일, 모바일, 모바일, 모바일, 모바일, 모바일) 그러나 더 중요한 것은 역사상 처음으로 모바일 장치 개발자가 모바일 웹 개발을 위한 표준을 마련하기로 결정한 것은 데스크탑 웹의 표준과 같다. 뿐만 아니라 모바일 웹 앱의 혁신적인 기능을 지원하는 장치나 타사 브라우저를 지원하는 모바일 장치도 소비자들에게 인기가 있습니다.