【Swift5】Google 양식에 미리 자동 입력
2732 단어 XcodeSwiftSwift5googleform
소개
앱의 문제의 보고 등으로, OS 정보나 앱의 버전 등의 정보가 있으면 매우 도움이 되는군요.
그래서 이번에는, 그 항목을 자동 입력해 주는 폼의 만드는 방법을 소개합니다.
방법
Google 설문지에는 자동 입력된 URL을 게시하는 기능이 있습니다.
이 URL의 일부를 Swift로 다시 작성하면 됩니다.
1. 양식 만들기
여기 에서 양식을 작성하십시오.
작성 방법에 대해서는 설명을 생략하겠습니다.
2. URL 생성
양식 작성 화면의 오른쪽 상단에 있는 · 세로로 나란한 메뉴 버튼에서 "사전 입력한 URL 가져오기"를 클릭합니다.
그러면 폼 입력 화면으로 날아가기 때문에, 사전 입력해 두고 싶은 항목에 알기 쉬운 문자열을 입력해 둡니다.

링크 가져오기를 클릭하면 URL이 생성됩니다.
화면 왼쪽 하단의 "링크 복사"를 눌러 복사해 둡시다.

자신의 경우에는 이런 링크가 되었습니다.
https://docs.google.com/forms/d/e/(省略)/viewform?usp=pp_url&entry.1009686721=osversion&entry.1835889012=appversion
3. OS 정보, 앱 버전 얻기
OS명은
UIDevice.current.systemName
, OS버전은 UIDevice.current.systemVersion
로 취득 가능합니다. (둘 다 String입니다)let os = "\(UIDevice.current.systemName)%20\(UIDevice.current.systemVersion)"
let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String
이 문자열은 URL의 일부이므로 공백(공백)을 사용하면 안 됩니다.
대신
%20
를 사용하면 비어 있습니다.추기 기종의 이름을 취득한다
정확한 모델 이름 (예 : "iPhone XS")을 얻으려면 YMTGetDeviceName이라는 라이브러리를 사용하십시오.
var device = YMTGetDeviceName.share.getDeviceName()
if let devName = device.range(of: " ") {
device.replaceSubrange(devName, with: "%20")
}
range를 사용하여 공백을
%20
로 바꿉니다.4. URL 재작성
방금전 URL의 osversion 부분을
\(os)
로, appversion 부분을 \(version)
로 다시 쓰면 됩니다.let url = URL(string:"https://docs.google.com/forms/d/e/(省略)/viewform?usp=pp_url&entry.1009686721=\(os)&entry.1835889012=\(version!)")
UIApplication.shared.open(url! as URL)
동작 확인

문제없이 표시됩니다.
사용자의 번거로움을 줄일 수 있으므로, 시도할 가치가 있다고 생각합니다!
Reference
이 문제에 관하여(【Swift5】Google 양식에 미리 자동 입력), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Luke1220/items/ef7e45d05da2f5570c2a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)