2013-12-18 4 views
3

여기에서 확인하는 경우 : http://cordova.apache.org/docs/en/3.3.0/cordova_storage_storage.md.html#Storage 페이지에 Web SQL Database API가 사용되고 있음이 명확하게 표시됩니다. 여기에 언급 한 바와 같이 왜 Cordova는 더 이상 사용되지 않는 Web SQL API를 사용합니까?

이 웹 SQL 데이터베이스 API

는 더 이상 유지되고 있지 : http://dev.w3.org/html5/webdatabase/

Moreoever, 웹 SQL 데이터베이스 API에 대한 폰갭 솔루션은 모든 플랫폼에서 사용할 수 없습니다. 한편, 그들은 indexedDB가 지원되지만 다른 장치 세트에 대해서도 언급합니다.

왜 그들은 교차 플랫폼 규범을 위반하고 API 사용이 중단 되었습니까?

답변

5

네이티브 WebView가 해당 기술을 지원하는지 여부에 따라 결정됩니다. iOS에서는 IndexedDB 지원이없고 누가 언제 변경 될지 알고 있습니다. Android에서는 WebViews에서만 최신 버전을 사용할 수 있다고 생각합니다. Chrome에서 잠시 동안 지원되었습니다. 하지만 Web SQL은 Android 및 iOS에서 지원되지만 더 이상 사용되지 않습니다.

그래서 Apple은 크로스 플랫폼 표준을 위반하고 더 이상 사용되지 않는 API를 사용한다고 비난했습니다. 그들에게 불평 해 주시길 바랍니다. 결국 그들은 결국 함께 행동하게 될 것입니다.

+1

나는 동의하지만 API를 표준화하고 기본 아키텍처를 숨기지 않는 이유는 무엇입니까? 예를 들어 이전 버전과의 호환성 및 업그레이드 지원을 통해 플랫폼간에 키/값 저장소를 제공하지 않는 이유는 무엇입니까? 프로젝트가 설정 한 내용이 아닌가요? 독립적 인 플랫폼을 구축 할 수 있습니까? "SQL 지원 유지"시도가 잘못되었다고 생각합니다. 왜 그것을 비추천하지 않고, 표준 키/값을 수용하거나 크로스 플랫폼에서 사용할 수있는 상점을 제공합니까? 나는 무딘 것에 대해 유감스럽게 생각합니다. 그러나 저는 코르도바가하고있는 일을 좋아합니다. "누구를 비난 할 것인가?"는 비길 데없는 길이다. –

+0

많은 일이 있었고 거대한 요구가 없었기 때문에 내 생각에는 그렇게하지 않았을 것이다. 필자의 비과학적인 견해로는 대부분의 개발자가 Web SQL을 IndexedDB로 선호하며 후자의 경우 Web을 대신 할 것을 요구하지 않습니다. 즉, 다른 사람들이 Web SQL 위에 IndexedDB API 용으로 작성한 polyfill이 있으며이를 사용할 수는 있지만 느리고 버그가 있습니다. https://github.com/facebook/IndexedDB-polyfill/ https://github.com/axemclion/IndexedDBShim – dumbmatter

+0

감사합니다. 나는 공식적인 대답을 얻기 위해 현상금을 제공 할 생각이다. 메일 링리스트에 계속있을 수도 있습니다. B-) –

0

이유는 Cordova가 js 호출을 장치 원시 코드로 푸시하고 모든 장치가 SQL Server의 기본 db 기술을 사용하므로 indexedDB에서 발생하는 것과 달리 websql에서의 시스템 호출이 완벽하게 변환되기 때문입니다.

+0

"모든 장치가 SQL Server를 기본 db 기술로 사용합니다"라고 말하면됩니까? 감사! –