fastlane: Problem about "Your app preview can't be uploaded because you have selected to use an app preview from a larger display size."

New Issue Checklist

Issue Description

When I upload trailer got an error: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page. I found a discuss about it in apple forums. https://forums.developer.apple.com/thread/56366 But it does not work for me?

Does anyone have the same problem? And how to fix it?

Complete Output

INFO [2017-10-11 14:33:57.64]: -------------------------------------------------
INFO [2017-10-11 14:33:57.64]: --- Step: Verifying required fastlane version ---
INFO [2017-10-11 14:33:57.64]: -------------------------------------------------
INFO [2017-10-11 14:33:57.64]: Your fastlane version 2.61.0 matches the minimum requirement of 2.47.0  ✅
INFO [2017-10-11 14:33:57.64]: ------------------------------
INFO [2017-10-11 14:33:57.64]: --- Step: default_platform ---
INFO [2017-10-11 14:33:57.64]: ------------------------------
INFO [2017-10-11 14:33:57.99]: Driving the lane 'ios uTrailer' 🚀
INFO [2017-10-11 14:33:57.99]: --------------------------
INFO [2017-10-11 14:33:57.99]: --- Step: upload_video ---
INFO [2017-10-11 14:33:57.99]: --------------------------
INFO [2017-10-11 14:33:57.99]: The upload_video plugin is working!
INFO [2017-10-11 14:33:57.99]: 检查视频参数
INFO [2017-10-11 14:33:57.99]: 视频:[{"file"=>"/Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/itc/1920x1080.mov", "position"=>2}]
Looking for iTunes Connect Team with ID 636349
INFO [2017-10-11 14:34:03.04]: Login successful
INFO [2017-10-11 14:34:04.14]: select application successful
INFO [2017-10-11 14:34:06.39]: appid:1258400755
INFO [2017-10-11 14:34:07.07]: zh-Hans
INFO [2017-10-11 14:34:07.08]: {"sectionErrorKeys":[],"sectionInfoKeys":[],"sectionWarningKeys":[],"value":null,"versionId":822968997,"name":null,"primaryLanguage":null,"version":{"value":"1.0.1","isEditable":true,"isRequired":true,"errorKeys":null},"copyright":{"value":"2010 canghaixiongfeng","isEditable":true,"isRequired":false,"errorKeys":null},"primaryCategory":null,"primaryFirstSubCategory":null,"primarySecondSubCategory":null,"secondaryCategory":null,"secondaryFirstSubCategory":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"secondarySecondSubCategory":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"submittableAddOns":{"value":[],"isEditable":true,"isRequired":true,"errorKeys":null},"gameCenterSummary":{"leaderboards":{"value":[],"isEditable":false,"isRequired":false,"errorKeys":null},"displaySets":{"value":[],"isEditable":false,"isRequired":false,"errorKeys":null},"achievements":{"value":[],"isEditable":false,"isRequired":false,"errorKeys":null},"versionCompatibility":{"value":[{"platforms":[],"name":"开心五子棋","adamId":"1258400755","iconAssetToken":"Purple118/v4/ac/ba/90/acba904a-11d5-e7f7-ab0e-18397c3f1fbf/pr_source.png"}],"isEditable":true,"isRequired":false,"errorKeys":null},"usedLeaderboards":0,"maxLeaderboards":100,"usedLeaderboardSets":0,"maxLeaderboardSets":100,"usedAchievementPoints":0,"maxAchievementPoints":1000,"isEnabled":false,"isEditable":true,"errorKeys":[],"isRequired":false,"unapprovedAchievements":[],"unapprovedLeaderboards":[],"unapprovedLeaderboardSets":[],"isEmptyValue":false},"phasedRelease":{"state":{"value":"NOT_STARTED","isEditable":true,"isRequired":false,"errorKeys":null},"startDate":null,"lastPaused":null,"pausedDuration":null,"totalPauseDays":30,"currentDayNumber":null,"dayPercentageMap":{"1":1,"2":2,"3":5,"4":10,"5":20,"6":50,"7":100},"isEnabled":true},"canSendVersionLive":false,"canPrepareForUpload":true,"canRejectVersion":false,"status":"devRejected","appType":null,"platform":"ios","ratings":{"nonBooleanDescriptors":[{"name":"ITC.apps.ratings.descriptor.CARTOON_FANTASY_VIOLENCE","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.REALISTIC_VIOLENCE","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.PROLONGED_GRAPHIC_SADISTIC_REALISTIC_VIOLENCE","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.PROFANITY_CRUDE_HUMOR","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.MATURE_SUGGESTIVE","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.HORROR","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.MEDICAL_TREATMENT_INFO","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.ALCOHOL_TOBACCO_DRUGS","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.GAMBLING","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.SEXUAL_CONTENT_NUDITY","level":"ITC.apps.ratings.level.NONE","rank":1},{"name":"ITC.apps.ratings.descriptor.GRAPHIC_SEXUAL_CONTENT_NUDITY","level":"ITC.apps.ratings.level.NONE","rank":1}],"booleanDescriptors":[{"name":"ITC.apps.ratings.descriptor.UNRESTRICTED_WEB_ACCESS","level":"ITC.apps.ratings.level.NO","rank":1},{"name":"ITC.apps.ratings.descriptor.GAMBLING_CONTESTS","level":"ITC.apps.ratings.level.NO","rank":1}],"ageBandMin":null,"ageBandMax":null,"allRatingLevels":["ITC.apps.ratings.level.YES","ITC.apps.ratings.level.NO","ITC.apps.ratings.level.NONE","ITC.apps.ratings.level.INFREQUENT_MILD","ITC.apps.ratings.level.FREQUENT_INTENSE"],"rating":"4+","isEditable":true,"isRequired":false,"errorKeys":null,"countryRatings":{"Brazil":"L"},"isEmptyValue":false},"details":{"value":[{"sectionErrorKeys":[],"sectionInfoKeys":[],"sectionWarningKeys":[],"value":null,"description":{"value":"五子棋-经典单机益智游戏,趣味性十足,双人对战,然你欲罢不能","isEditable":true,"isRequired":false,"errorKeys":null},"language":"zh-Hans","detailId":"1190314582","releaseNotes":{"value":"4566666","isEditable":true,"isRequired":false,"errorKeys":null},"keywords":{"value":"单机,益智,五子棋","isEditable":true,"isRequired":false,"errorKeys":null},"promotionalText":{"value":"经典单机益智游戏,趣味性十足,双人对战,然你欲罢不能","isEditable":true,"isRequired":false,"errorKeys":null,"maxLength":170,"minLength":0},"displayFamilies":{"value":[{"name":"ipad","scaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}},{"name":"iphone6","scaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}},{"name":"iphone6Plus","scaled":{"value":false,"isEditable":false,"isRequired":false,"errorKeys":null},"screenshots":{"value":[{"value":{"assetToken":"Purple128/v4/ef/2d/38/ef2d3817-863d-65a9-07e7-1706d3d192b1/pr_source.jpg","sortOrder":1,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":"1_iphone6Plus_1.ftl_53665f68080bc330467c3adbdd1f4175_203b7252cd03d743c696b7e0fd58260b.png"},"isEditable":true,"isRequired":false,"errorKeys":null},{"value":{"assetToken":"Purple128/v4/d5/52/4e/d5524ef9-ac51-1945-7646-1e8d912f1b5d/pr_source.jpg","sortOrder":2,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":"2_iphone6Plus_2.ftl_bee346239e94b0174ef0c31abde40a7f_838baf38aa1ddf707b93b9c095f01ccb.png"},"isEditable":true,"isRequired":false,"errorKeys":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[{"value":{"videoAssetToken":null,"pictureAssetToken":null,"descriptionXML":null,"previewFrameTimeCode":"00:05","isPortrait":false,"videoUrl":"https://apptrailers-ssl.assets.itunes.com/apple-assets-us-std-000001/PurpleVideo128/v4/69/bb/98/69bb98d5-fe1f-ac39-e798-10f80026a62f/P49458974_default.m3u8","previewImageUrl":"https://is2-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/500x500bb-80.png","fullSizedPreviewImageUrl":"https://is1-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/1920x1080ss-80.png","contentType":null,"videoStatus":"Done","sortPosition":1,"id":1789389},"isEditable":true,"isRequired":false,"errorKeys":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":false,"isEditable":false,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}},{"name":"watch","scaled":{"value":true,"isEditable":false,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":false,"isRequired":false,"errorKeys":null},"messagesScreenshots":null},{"name":"ipadPro","scaled":{"value":true,"isEditable":false,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[{"value":{"videoAssetToken":null,"pictureAssetToken":null,"descriptionXML":null,"previewFrameTimeCode":"00:05","isPortrait":false,"videoUrl":"https://apptrailers-ssl.assets.itunes.com/apple-assets-us-std-000001/PurpleVideo118/v4/89/84/73/89847307-bd34-4079-ff2f-0bf840f0d72c/P49459827_default.m3u8","previewImageUrl":"https://is2-ssl.mzstatic.com/image/thumb/PurpleVideo128/v4/f1/20/2a/f1202a5e-6d07-882f-0595-f46773739998/Jobdb65ad96-9d03-4369-9fc0-2576e1580615-98163929-PreviewImage_preview_image_nonvideo_sdr-Time1507692890885.png/500x500bb-80.png","fullSizedPreviewImageUrl":"https://is2-ssl.mzstatic.com/image/thumb/PurpleVideo128/v4/f1/20/2a/f1202a5e-6d07-882f-0595-f46773739998/Jobdb65ad96-9d03-4369-9fc0-2576e1580615-98163929-PreviewImage_preview_image_nonvideo_sdr-Time1507692890885.png/1200x900ss-80.png","contentType":null,"videoStatus":"Done","sortPosition":1,"id":1789660},"isEditable":true,"isRequired":false,"errorKeys":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":false,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}},{"name":"iphone4","scaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}},{"name":"iphone35","scaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"screenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScreenshots":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"canDeleteLocale":false,"marketingUrl":{"value":"http://www.laohu.com","isEditable":true,"isRequired":false,"errorKeys":null},"supportUrl":{"value":"http://www.laohu.com","isEditable":true,"isRequired":false,"errorKeys":null}}],"isEditable":true,"isRequired":true,"errorKeys":null},"transitAppFile":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"eula":null,"largeAppIcon":{"value":{"assetToken":"Purple118/v4/c7/05/e9/c705e999-5004-ffc0-6d83-bd48aa1ac040/pr_source.jpg","sortOrder":null,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":"ftl_8c92c0a2096e1d5912e6d3524da5d7f4_app_icon.jpg","url":"https://is1-ssl.mzstatic.com/image/thumb/Purple118/v4/c7/05/e9/c705e999-5004-ffc0-6d83-bd48aa1ac040/pr_source.jpg/0x0ss.jpg"},"isEditable":true,"isRequired":false,"errorKeys":null},"watchAppIcon":{"value":{"assetToken":null,"sortOrder":null,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":null,"url":"https://is1-ssl.mzstatic.com/image/thumb//0x0ss.jpg"},"isEditable":true,"isRequired":false,"errorKeys":null},"atvHomeScreenIcon":{"assetToken":null,"sortOrder":null,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":null},"atvTopShelfIcon":{"assetToken":null,"sortOrder":null,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":null},"largeMessagesIcon":{"assetToken":null,"sortOrder":null,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":null},"appReviewInfo":{"firstName":{"value":"佳","isEditable":true,"isRequired":false,"errorKeys":null},"lastName":{"value":"张","isEditable":true,"isRequired":false,"errorKeys":null},"phoneNumber":{"value":"+8613699203448","isEditable":true,"isRequired":false,"errorKeys":null},"emailAddress":{"value":"zjia8765@163.com","isEditable":true,"isRequired":false,"errorKeys":null},"reviewNotes":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"userName":{"value":"sdk44@laohu.com","isEditable":true,"isRequired":false,"errorKeys":null},"password":{"value":"Laohutest0","isEditable":true,"isRequired":false,"errorKeys":null},"accountRequired":{"value":true,"isEditable":true,"isRequired":false,"errorKeys":null},"entitlementUsages":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null},"attachmentFiles":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null}},"appStoreInfo":{"tradeName":{"value":"beijing canghaixiongfeng jisuanji xitong youxian gongsi","isEditable":false,"isRequired":true,"errorKeys":null},"firstName":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"lastName":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"phoneNumber":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"emailAddress":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"appRegInfo":null,"addressLine1":{"value":"E701, Building 1, yard 1","isEditable":true,"isRequired":false,"errorKeys":null},"addressLine2":{"value":"Shangdi East Road, Haidian District, Beijing","isEditable":true,"isRequired":false,"errorKeys":null},"addressLine3":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"cityName":{"value":"Beijing","isEditable":true,"isRequired":false,"errorKeys":null},"state":{"value":"BEIJING","isEditable":true,"isRequired":false,"errorKeys":null},"postalCode":{"value":"100084","isEditable":true,"isRequired":false,"errorKeys":null},"country":{"value":"China","isEditable":true,"isRequired":false,"errorKeys":null},"shouldDisplayInStore":{"value":false,"isEditable":true,"isRequired":false,"errorKeys":null}},"appVersionPageLinks":{},"preReleaseBuildVersionString":{"value":"1.0.1.3","isEditable":true,"isRequired":false,"errorKeys":null},"preReleaseBuildTrainVersionString":"1.0.1","preReleaseBuildIconUrl":"https://is2-ssl.mzstatic.com/image/thumb/Newsstand118/v4/8c/89/ed/8c89edc2-5674-66de-72aa-ff0854d68fe2/Icon-60@2x.png.png/150x150bb-80.png","preReleaseBuildUploadDate":1504677553000,"preReleaseBuild":{"sectionErrorKeys":[],"sectionInfoKeys":[],"sectionWarningKeys":[],"value":null,"id":23179013,"buildVersion":"1.0.1.3","trainVersion":"1.0.1","uploadDate":1504677553000,"iconUrl":"https://is2-ssl.mzstatic.com/image/thumb/Newsstand118/v4/8c/89/ed/8c89edc2-5674-66de-72aa-ff0854d68fe2/Icon-60@2x.png.png/150x150bb-80.png","iconAssetToken":"Newsstand118/v4/8c/89/ed/8c89edc2-5674-66de-72aa-ff0854d68fe2/Icon-60@2x.png.png","appName":"开心五子棋","platform":"ios","betaEntitled":true,"exceededFileSizeLimit":false,"wentLiveWithVersion":false,"processing":false,"processingState":null,"processingError":null,"exportComplianceState":"notRequired","messagesIconAssetToken":null,"watchIconAssetToken":null,"hasStickers":false,"hasMessagesExtension":false,"launchProhibited":false},"preReleaseBuildsAreAvailable":true,"preReleaseBuildIsLegacy":false,"canBetaTest":true,"isSaveError":false,"validationError":false,"releaseOnApproval":{"value":"false","isEditable":true,"isRequired":false,"errorKeys":null},"bundleInfo":{"supportsAppleWatch":false},"autoReleaseDate":{"value":null,"isEditable":true,"isRequired":false,"errorKeys":null},"marketingOptInEnabled":null,"ratingsReset":{"value":false,"isEditable":true,"isRequired":false,"errorKeys":null},"is_live":false}
INFO [2017-10-11 14:34:07.08]: {"name":"iphone6Plus","scaled":{"value":false,"isEditable":false,"isRequired":false,"errorKeys":null},"screenshots":{"value":[{"value":{"assetToken":"Purple128/v4/ef/2d/38/ef2d3817-863d-65a9-07e7-1706d3d192b1/pr_source.jpg","sortOrder":1,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":"1_iphone6Plus_1.ftl_53665f68080bc330467c3adbdd1f4175_203b7252cd03d743c696b7e0fd58260b.png"},"isEditable":true,"isRequired":false,"errorKeys":null},{"value":{"assetToken":"Purple128/v4/d5/52/4e/d5524ef9-ac51-1945-7646-1e8d912f1b5d/pr_source.jpg","sortOrder":2,"type":null,"size":null,"width":null,"height":null,"checksum":null,"originalFileName":"2_iphone6Plus_2.ftl_bee346239e94b0174ef0c31abde40a7f_838baf38aa1ddf707b93b9c095f01ccb.png"},"isEditable":true,"isRequired":false,"errorKeys":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"trailer":null,"trailers":{"value":[{"value":{"videoAssetToken":null,"pictureAssetToken":null,"descriptionXML":null,"previewFrameTimeCode":"00:05","isPortrait":false,"videoUrl":"https://apptrailers-ssl.assets.itunes.com/apple-assets-us-std-000001/PurpleVideo128/v4/69/bb/98/69bb98d5-fe1f-ac39-e798-10f80026a62f/P49458974_default.m3u8","previewImageUrl":"https://is2-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/500x500bb-80.png","fullSizedPreviewImageUrl":"https://is1-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/1920x1080ss-80.png","contentType":null,"videoStatus":"Done","sortPosition":1,"id":1789389},"isEditable":true,"isRequired":false,"errorKeys":null}],"isEditable":true,"isRequired":false,"errorKeys":null},"messagesScaled":{"value":false,"isEditable":false,"isRequired":false,"errorKeys":null},"messagesScreenshots":{"value":[],"isEditable":true,"isRequired":false,"errorKeys":null}}
INFO [2017-10-11 14:34:07.08]: exsiting_sort_orders is [1]
INFO [2017-10-11 14:34:07.08]: 开始上传视频/Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/itc/1920x1080.mov.....
INFO [2017-10-11 14:38:39.45]: upload trailer successful: {"responses"=>[{"url"=>"NULL", "token"=>"VideoSource118/v4/6e/d1/9b/6ed19bbf-ae75-4566-d5b0-8db652a6f143/pr_source.mp4", "groupToken"=>{"groupToken"=>"VideoSource118/v4/6e/d1/9b/6ed19bbf-ae75-4566-d5b0-8db652a6f143", "pool"=>"VideoSource118", "syntaxVersion"=>"HASH_MOUNT_UUID_GROUP"}, "blobString"=>"{\"token\":\"VideoSource118/v4/6e/d1/9b/6ed19bbf-ae75-4566-d5b0-8db652a6f143/pr_source.mp4\",\"type\":\"SMVideoType.SOURCE\",\"originalFileName\":\"ftl_49d74986e52be0fbc78f31a11926d4fc_1920x1080.mov\"}", "descriptionDoc"=>"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><!--Generated by the FoghornLeghorn Quicktime MediaDescriptionGenerator, version 1.25--><!--File URL: \"\"--><movie xmlns:ma=\"http://beans.media.leghorn.jingle.apple.com\" codecs=\"avc1.674280, mp4a.40.2\" type=\"mpeg4\"><describer><ma:name>FoghornLeghorn MPEG-4 Parser</ma:name><ma:version>1.25</ma:version></describer><clock poster_time=\"0\" preview_duration=\"0\" preview_time=\"0\" time_scale=\"90000\" total_duration=\"2697000\"/><tracks><sound enabled=\"true\" index=\"0\" type=\"soun\"><track_id>1</track_id><language numeric=\"5575\">eng</language><alternate_group>0</alternate_group><matrix identity=\"true\"/><data_size units=\"bytes\">718584</data_size><duration milliseconds=\"29931\" track_duration=\"2693760\" units=\"milliseconds\">29931</duration><sample_description_count>1</sample_description_count><user_data_atoms/><data_rate units=\"Kb/s\">187.56473</data_rate><codec name=\"aac \" type=\"mp4a.40.2\">aac </codec><channel_layout name=\"Stereo (L R)\"><channel name=\"Left\">L</channel><channel name=\"Right\">R</channel></channel_layout><sample_rate units=\"kilohertz\">48.0</sample_rate><bit_depth>16</bit_depth><udc2>false</udc2><udi2>false</udi2></sound><video enabled=\"true\" index=\"1\" type=\"vide\"><track_id>2</track_id><language numeric=\"5575\">eng</language><alternate_group>0</alternate_group><matrix identity=\"true\"/><data_size units=\"bytes\">41725297</data_size><duration milliseconds=\"29967\" track_duration=\"2697000\" units=\"milliseconds\">29967</duration><sample_description_count>1</sample_description_count><duration_statistics mean_duration=\"1.0\" time_scale=\"30\" total_duration=\"899\" uniform=\"true\"/><user_data_atoms/><data_rate units=\"Kb/s\">10878.05</data_rate><data_rate_statistics units=\"Kb/s\"><peak first_media_DTS=\"45\" last_media_DTS=\"45\">15167</peak></data_rate_statistics><graphics_mode>copy</graphics_mode><codec name=\"H.264\" type=\"avc1.674280\">avc1</codec><encoded_dimensions><width>1920</width><height>1080</height></encoded_dimensions><display_dimensions><width>1920</width><height>1080</height></display_dimensions><track_dimensions><width>1920</width><height>1080</height></track_dimensions><frame_rate_mode>CFR</frame_rate_mode><frame_rate>30.0</frame_rate><field_dominance>progressive</field_dominance><sample_description><avcC><profile>Baseline</profile><compatability>224</compatability><level>4.0</level><nal_units><picture_parameter_sets><pic_parameter_set entropy_coding_mode_flag=\"0\" pic_parameter_set_id=\"0\" seq_parameter_set_id=\"0\"/></picture_parameter_sets></nal_units><raw_avcc>0142E028FFE1002767428028965200F0044FCB80A840000003004000000F3910000A7D8000043238FC6383B430649001000468CB8D48</raw_avcc></avcC></sample_description><maximum_sample_size>694004</maximum_sample_size></video></tracks><matrix identity=\"true\"/><notifications><ma:notification code=\"mediaValidation.video.compositionOffsetTable.displayTimeOverlap\" level=\"SHADOW\"><ma:parameters><ma:entry key=\"message\">DisplayTimeOverlaps: Sample 898 and 899 @ time offset 899</ma:entry></ma:parameters></ma:notification><ma:notification code=\"mediaValidation.data\" level=\"INFO\"><ma:parameters><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.trackType\">soun</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.dataFormat\">mp4a</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.compressionId\">0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.sampleRate\">48000.0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsc.mostFrequentSampleDescriptionId\">0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsc.sampleCountOfId:0\">987</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.trackType\">vide</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.dataFormat\">avc1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.vendor\">????</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.temporalQuality\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.spatialQuality\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.width\">1920</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.height\">1080</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.hRes\">72.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.vRes\">72.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.frameCount\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.compressorName\">\nAVC Coding</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.depth\">24</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.version\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.profile\">66</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.compatability\">224</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.level\">4.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.profileIdc\">66</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.constraintSets\">80</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.levelIdc\">40</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.seqParameterSetId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.log2MaxFrameNum\">8</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picOrderCntType\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.log2MaxPicOrderCountLsb\">8</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.deltaPictureAlwaysZero\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.offsetForNonrefPic\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.offsetForTopToBottomField\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.numRefFramesInPicorderCntCycle\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.numRefFrames\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.gapsInFrameNumValueAllowedFlag\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picWidthInMbs\">120</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picHeightInMapUnits\">68</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameMbsOnly\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.mbAdaptiveFrameField\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.direct8x8Inference\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.left\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.right\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.top\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.bottom\">4</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.aspectRatio\">1:1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.videoSignalType.videoFormat\">2</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.videoSignalType.videoFullRange\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.numUnitsInTick\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.timeScale\">60</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.fixedFrameRate\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.motionVectorsOverPicBoundaries\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxBytesPerPicDenom\">2</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxBitsPerMbDenom\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.log2MaxMvLengthHorizontal\">11</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.log2MaxMvLengthVertical\">11</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxNumReorderFrames\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxDecFrameBuffering\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.nalHrdParameters\">HrdParameters[cpbs=[Cpb[bitRate=42967, cpbSize=137499, cbr=false]], bitRateScale=2, cpbSizeScale=2, initialCpbRemovalDelayLength=32, cpbRemovalDelayLength=18, dpbOutputDelayLength=18, timeOffsetLength=24]</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.lowDelayHrd\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.ppsId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.spsId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.entropyCodingMode\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.sliceGroupMapType\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.bottomFieldPictureOrderInFramePresent\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.numRefIdx10DefaultActive\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.explicitWeightedPrediction\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.weightedBiPredIdc\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.chromaQpIndexOffset\">-1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.deblockingFilterControlPresent\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.constrainedIntraPrediction\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.redundantPicCountElementPresent\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.transform8x8Mode\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsc.mostFrequentSampleDescriptionId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsc.sampleCountOfId:0\">39</ma:entry><ma:entry key=\"message\">data</ma:entry></ma:parameters></ma:notification></notifications></movie>"}]}
INFO [2017-10-11 14:38:39.45]: 视频上传成功
INFO [2017-10-11 14:38:39.45]: 开始上传视频预览图片....
INFO [2017-10-11 14:38:41.02]: 视屏截屏路径: /var/folders/hg/sr_z4nkx647_jrqv60xg2qr80000gp/T/video_preview20171011-26062-1i340ja.jpg
INFO [2017-10-11 14:38:45.37]: 视频预览图片上传成功:{"token"=>"Purple118/v4/62/cd/e1/62cde19f-2ff1-ff3e-5b64-5d88148ea37c/pr_source.jpg", "tokenType"=>"AssetToken", "type"=>"MZSortedN56ScreenShotImageType.SOURCE", "width"=>2208, "height"=>1242, "hasAlpha"=>false, "length"=>198952, "md5"=>"cd2c2ecb8c1a230838fbef1592b5f863"}
INFO [2017-10-11 14:38:45.37]: {"name"=>"iphone6Plus", "scaled"=>{"value"=>false, "isEditable"=>false, "isRequired"=>false, "errorKeys"=>nil}, "screenshots"=>{"value"=>[{"value"=>{"assetToken"=>"Purple128/v4/ef/2d/38/ef2d3817-863d-65a9-07e7-1706d3d192b1/pr_source.jpg", "sortOrder"=>1, "type"=>nil, "size"=>nil, "width"=>nil, "height"=>nil, "checksum"=>nil, "originalFileName"=>"1_iphone6Plus_1.ftl_53665f68080bc330467c3adbdd1f4175_203b7252cd03d743c696b7e0fd58260b.png"}, "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}, {"value"=>{"assetToken"=>"Purple128/v4/d5/52/4e/d5524ef9-ac51-1945-7646-1e8d912f1b5d/pr_source.jpg", "sortOrder"=>2, "type"=>nil, "size"=>nil, "width"=>nil, "height"=>nil, "checksum"=>nil, "originalFileName"=>"2_iphone6Plus_2.ftl_bee346239e94b0174ef0c31abde40a7f_838baf38aa1ddf707b93b9c095f01ccb.png"}, "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}], "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}, "trailer"=>nil, "trailers"=>{"value"=>[{"value"=>{"videoAssetToken"=>nil, "pictureAssetToken"=>nil, "descriptionXML"=>nil, "previewFrameTimeCode"=>"00:05", "isPortrait"=>false, "videoUrl"=>"https://apptrailers-ssl.assets.itunes.com/apple-assets-us-std-000001/PurpleVideo128/v4/69/bb/98/69bb98d5-fe1f-ac39-e798-10f80026a62f/P49458974_default.m3u8", "previewImageUrl"=>"https://is2-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/500x500bb-80.png", "fullSizedPreviewImageUrl"=>"https://is1-ssl.mzstatic.com/image/thumb/PurpleVideo118/v4/07/e5/6e/07e56eca-9f41-54eb-6802-9ef170d73252/Job0444cf70-59bc-4ffe-a1e9-6c3e7d313035-98163367-PreviewImage_preview_image_nonvideo_sdr-Time1507689795814.png/1920x1080ss-80.png", "contentType"=>nil, "videoStatus"=>"Done", "sortPosition"=>1, "id"=>1789389}, "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}, {"value"=>{"videoAssetToken"=>"VideoSource118/v4/6e/d1/9b/6ed19bbf-ae75-4566-d5b0-8db652a6f143/pr_source.mp4", "pictureAssetToken"=>"Purple118/v4/62/cd/e1/62cde19f-2ff1-ff3e-5b64-5d88148ea37c/pr_source.jpg", "descriptionXML"=>"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><!--Generated by the FoghornLeghorn Quicktime MediaDescriptionGenerator, version 1.25--><!--File URL: \"\"--><movie xmlns:ma=\"http://beans.media.leghorn.jingle.apple.com\" codecs=\"avc1.674280, mp4a.40.2\" type=\"mpeg4\"><describer><ma:name>FoghornLeghorn MPEG-4 Parser</ma:name><ma:version>1.25</ma:version></describer><clock poster_time=\"0\" preview_duration=\"0\" preview_time=\"0\" time_scale=\"90000\" total_duration=\"2697000\"/><tracks><sound enabled=\"true\" index=\"0\" type=\"soun\"><track_id>1</track_id><language numeric=\"5575\">eng</language><alternate_group>0</alternate_group><matrix identity=\"true\"/><data_size units=\"bytes\">718584</data_size><duration milliseconds=\"29931\" track_duration=\"2693760\" units=\"milliseconds\">29931</duration><sample_description_count>1</sample_description_count><user_data_atoms/><data_rate units=\"Kb/s\">187.56473</data_rate><codec name=\"aac \" type=\"mp4a.40.2\">aac </codec><channel_layout name=\"Stereo (L R)\"><channel name=\"Left\">L</channel><channel name=\"Right\">R</channel></channel_layout><sample_rate units=\"kilohertz\">48.0</sample_rate><bit_depth>16</bit_depth><udc2>false</udc2><udi2>false</udi2></sound><video enabled=\"true\" index=\"1\" type=\"vide\"><track_id>2</track_id><language numeric=\"5575\">eng</language><alternate_group>0</alternate_group><matrix identity=\"true\"/><data_size units=\"bytes\">41725297</data_size><duration milliseconds=\"29967\" track_duration=\"2697000\" units=\"milliseconds\">29967</duration><sample_description_count>1</sample_description_count><duration_statistics mean_duration=\"1.0\" time_scale=\"30\" total_duration=\"899\" uniform=\"true\"/><user_data_atoms/><data_rate units=\"Kb/s\">10878.05</data_rate><data_rate_statistics units=\"Kb/s\"><peak first_media_DTS=\"45\" last_media_DTS=\"45\">15167</peak></data_rate_statistics><graphics_mode>copy</graphics_mode><codec name=\"H.264\" type=\"avc1.674280\">avc1</codec><encoded_dimensions><width>1920</width><height>1080</height></encoded_dimensions><display_dimensions><width>1920</width><height>1080</height></display_dimensions><track_dimensions><width>1920</width><height>1080</height></track_dimensions><frame_rate_mode>CFR</frame_rate_mode><frame_rate>30.0</frame_rate><field_dominance>progressive</field_dominance><sample_description><avcC><profile>Baseline</profile><compatability>224</compatability><level>4.0</level><nal_units><picture_parameter_sets><pic_parameter_set entropy_coding_mode_flag=\"0\" pic_parameter_set_id=\"0\" seq_parameter_set_id=\"0\"/></picture_parameter_sets></nal_units><raw_avcc>0142E028FFE1002767428028965200F0044FCB80A840000003004000000F3910000A7D8000043238FC6383B430649001000468CB8D48</raw_avcc></avcC></sample_description><maximum_sample_size>694004</maximum_sample_size></video></tracks><matrix identity=\"true\"/><notifications><ma:notification code=\"mediaValidation.video.compositionOffsetTable.displayTimeOverlap\" level=\"SHADOW\"><ma:parameters><ma:entry key=\"message\">DisplayTimeOverlaps: Sample 898 and 899 @ time offset 899</ma:entry></ma:parameters></ma:notification><ma:notification code=\"mediaValidation.data\" level=\"INFO\"><ma:parameters><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.trackType\">soun</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.dataFormat\">mp4a</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.compressionId\">0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsd.0.sampleRate\">48000.0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsc.mostFrequentSampleDescriptionId\">0</ma:entry><ma:entry key=\"moov.trak.1.mdia.minf.stbl.stsc.sampleCountOfId:0\">987</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.trackType\">vide</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.dataFormat\">avc1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.vendor\">????</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.temporalQuality\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.spatialQuality\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.width\">1920</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.height\">1080</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.hRes\">72.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.vRes\">72.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.frameCount\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.compressorName\">\nAVC Coding</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.depth\">24</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.version\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.profile\">66</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.compatability\">224</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.level\">4.0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.profileIdc\">66</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.constraintSets\">80</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.levelIdc\">40</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.seqParameterSetId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.log2MaxFrameNum\">8</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picOrderCntType\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.log2MaxPicOrderCountLsb\">8</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.deltaPictureAlwaysZero\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.offsetForNonrefPic\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.offsetForTopToBottomField\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.numRefFramesInPicorderCntCycle\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.numRefFrames\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.gapsInFrameNumValueAllowedFlag\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picWidthInMbs\">120</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.picHeightInMapUnits\">68</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameMbsOnly\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.mbAdaptiveFrameField\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.direct8x8Inference\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.left\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.right\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.top\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.frameCrop.bottom\">4</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.aspectRatio\">1:1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.videoSignalType.videoFormat\">2</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.videoSignalType.videoFullRange\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.numUnitsInTick\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.timeScale\">60</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.timeInfo.fixedFrameRate\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.motionVectorsOverPicBoundaries\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxBytesPerPicDenom\">2</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxBitsPerMbDenom\">1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.log2MaxMvLengthHorizontal\">11</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.log2MaxMvLengthVertical\">11</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxNumReorderFrames\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.bitStreamRestriction.maxDecFrameBuffering\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.nalHrdParameters\">HrdParameters[cpbs=[Cpb[bitRate=42967, cpbSize=137499, cbr=false]], bitRateScale=2, cpbSizeScale=2, initialCpbRemovalDelayLength=32, cpbRemovalDelayLength=18, dpbOutputDelayLength=18, timeOffsetLength=24]</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.sps.0.vui.lowDelayHrd\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.ppsId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.spsId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.entropyCodingMode\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.sliceGroupMapType\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.bottomFieldPictureOrderInFramePresent\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.numRefIdx10DefaultActive\">3</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.explicitWeightedPrediction\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.weightedBiPredIdc\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.chromaQpIndexOffset\">-1</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.deblockingFilterControlPresent\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.constrainedIntraPrediction\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.redundantPicCountElementPresent\">false</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsd.0.avcC.0.pps.0.transform8x8Mode\">true</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsc.mostFrequentSampleDescriptionId\">0</ma:entry><ma:entry key=\"moov.trak.2.mdia.minf.stbl.stsc.sampleCountOfId:0\">39</ma:entry><ma:entry key=\"message\">data</ma:entry></ma:parameters></ma:notification></notifications></movie>", "contentType"=>"video/quicktime", "videoUrl"=>nil, "previewImageUrl"=>nil, "fullSizedPreviewImageUrl"=>nil, "previewFrameTimeCode"=>"00:00:05:00", "isPortrait"=>false, "videoStatus"=>"running", "sortPosition"=>2, "size"=>198952, "width"=>2208, "height"=>1242, "checkSum"=>"cd2c2ecb8c1a230838fbef1592b5f863"}, "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}], "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}, "messagesScaled"=>{"value"=>false, "isEditable"=>false, "isRequired"=>false, "errorKeys"=>nil}, "messagesScreenshots"=>{"value"=>[], "isEditable"=>true, "isRequired"=>false, "errorKeys"=>nil}}
INFO [2017-10-11 14:38:45.37]: video_screenshot:/var/folders/hg/sr_z4nkx647_jrqv60xg2qr80000gp/T/video_preview20171011-26062-1i340ja.jpg
INFO [2017-10-11 14:38:45.38]: 保存修改...
Potential server error received: 'Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.'. Retrying after 10 seconds (remaining: 5)...
Potential server error received: 'Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.'. Retrying after 10 seconds (remaining: 5)...
ERROR [2017-10-11 14:40:43.48]: Unable to send the crash report.
ERROR [2017-10-11 14:40:43.48]: Please open an issue on GitHub if you need help!
ERROR [2017-10-11 14:40:43.48]: uTrailer failed => Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.
WARN [2017-10-11 14:40:43.48]: Lane Context:
INFO [2017-10-11 14:40:43.48]: {:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios uTrailer"}
ERROR [2017-10-11 14:40:43.48]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.
INFO [2017-10-11 14:40:43.48]: Successfully generated documentation at path '/Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/demo28/fastlane/README.md'

+------+-------------------------------------+-------------+
|                     fastlane summary                     |
+------+-------------------------------------+-------------+
| Step | Action                              | Time (in s) |
+------+-------------------------------------+-------------+
| 1    | Verifying required fastlane version | 0           |
| 2    | default_platform                    | 0           |
| 💥   | upload_video                        | 345         |
+------+-------------------------------------+-------------+

ERROR [2017-10-11 14:40:43.50]: fastlane finished with errors
ERROR [2017-10-11 14:41:43.52]: Unable to send the crash report.
ERROR [2017-10-11 14:41:43.52]: Please open an issue on GitHub if you need help!

Looking for related GitHub issues on fastlane/fastlane...
Search query: The request could not be completed because:
	Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.

URL: https://api.github.com/search/issues?q=The%20request%20could%20not%20be%20completed%20because:%0A%09Your%20app%20preview%20can't%20be%20uploaded%20because%20you%20have%20selected%20to%20use%20an%20app%20preview%20from%20a%20larger%20display%20size.%20[zh-Hans]:%20Your%20app%20preview%20can't%20be%20uploaded%20because%20you%20have%20selected%20to%20use%20an%20app%20preview%20from%20a%20larger%20display%20size.%20There%20are%20one%20or%20more%20errors%20on%20the%20page.+repo:fastlane/fastlane
ERROR [2017-10-11 14:41:45.31]: Error finding relevant GitHub issues: undefined method `map' for nil:NilClass
/Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/spaceship/lib/spaceship/tunes/tunes_client.rb:174:in `handle_itc_response': [!] The request could not be completed because: (Spaceship::TunesClient::ITunesConnectPotentialServerError)
	Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. [zh-Hans]: Your app preview can't be uploaded because you have selected to use an app preview from a larger display size. There are one or more errors on the page.
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/spaceship/lib/spaceship/tunes/tunes_client.rb:354:in `block in update_app_version!'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/spaceship/lib/spaceship/tunes/tunes_client.rb:1358:in `with_tunes_retry'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/spaceship/lib/spaceship/tunes/tunes_client.rb:347:in `update_app_version!'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/spaceship/lib/spaceship/tunes/app_version.rb:388:in `save!'
	from /Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/demo28/fastlane/actions/upload_video_action.rb:136:in `run'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:252:in `block (2 levels) in execute_action'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/actions/actions_helper.rb:50:in `execute_action'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:230:in `block in execute_action'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:226:in `chdir'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:226:in `execute_action'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:148:in `trigger_action_by_name'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/fast_file.rb:146:in `method_missing'
	from Fastfile:29:in `block (2 levels) in parsing_binding'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/lane.rb:33:in `call'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:49:in `block in execute'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:45:in `chdir'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/runner.rb:45:in `execute'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/lane_manager.rb:52:in `cruise_lane'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/command_line_handler.rb:30:in `handle'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/commands_generator.rb:104:in `block (2 levels) in run'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:in `run'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in `run_active_command'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:64:in `run!'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in `run!'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/commands_generator.rb:303:in `run'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/commands_generator.rb:42:in `start'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/fastlane/lib/fastlane/cli_tools_distributor.rb:66:in `take_off'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/gems/fastlane-2.61.0/bin/fastlane:20:in `<top (required)>'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/bin/fastlane:23:in `load'
	from /Users/daiyunxing/.rvm/gems/ruby-2.4.0/bin/fastlane:23:in `<main>'

Environment

✅ fastlane environment ✅

Stack

Key Value
OS 10.12.6
Ruby 2.4.0
Bundler? false
Git git version 2.14.2
Installation Source ~/.rvm/gems/ruby-2.4.0/bin/fastlane
Host Mac OS X 10.12.6 (16G29)
Ruby Lib Dir ~/.rvm/rubies/ruby-2.4.0/lib
OpenSSL Version OpenSSL 1.1.0f 25 May 2017
Is contained false
Is homebrew false
Is installed via Fabric.app false
Xcode Path /Applications/Xcode.app/Contents/Developer/
Xcode Version 9.0

System Locale

Variable Value
LANG zh_CN.UTF-8
LC_ALL
LANGUAGE

fastlane files:

`./fastlane/Fastfile`
fastlane_require 'aspector'
fastlane_version '2.47.0'

default_platform :ios

platform :ios do
  USER_NAME = CredentialsManager::AppfileConfig.try_fetch_value(:apple_id)
  APP_IDENTIFIER = CredentialsManager::AppfileConfig.try_fetch_value(:app_identifier)

  before_all do
    unless Dir.exist?("./test_flight/sync/")
      FileUtils.mkdir_p("./test_flight/sync/")
    end
  end

  desc 'Binary Reject by Developer from App Store'
  lane :breject do
    binary_reject
  end

  desc 'Deliver with custom options'
  lane :cdeliver do |_options|
    # deliver
    deliver # Uses deliver to upload new app metadata and builds to iTunes Connet
  end

  desc 'Upload trailer file'
  lane :uTrailer do |_options|
    upload_video_action(username: USER_NAME,
                        app_identifier: APP_IDENTIFIER,
                        trailers: [{ 'file' => '/Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/itc/1920x1080.mov',
                                     'position' => 2 }].to_json,
                        # {'file' => '/Users/daiyunxing/Work/SDK/SourceCode/fastlane/tiger/itc/1920x1080.mov',
                        #   'position' => 2,
                        # 'preview' => ''}.to_json.to_s,
                        language: 'zh-Hans',
                        portrait: 'false',
                        device: 'iphone6Plus')
  end

  desc 'remove trailer in position x'
  lane :rTrailer do |_options|
    remove_video(username: USER_NAME,
                 app_identifier: APP_IDENTIFIER,
                 position: 1,
                 language: 'zh-Hans',
                 device: 'ipadPro')
  end

  ##########################################################################
  ### Group
  desc 'Create test group'
  lane :create_test_group_for_app do |_options|
    Captain::TestFlight::Captain.create_group(username: USER_NAME,
                                              app_identifier: APP_IDENTIFIER,
                                              group_name: 'Team33')
  end

  desc 'delete group from app'
  lane :delete_test_group_from_app do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             group_id: '44799429-8889-479e-836d-dc4690d8a9a0',
             delete_testers: false }

    Captain::TestFlight::Captain.remove_group(base)
  end

  lane :delete_test_groups_from_app do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: %w(5a6912fb-9d6a-400d-8a04-471d303fcb1d a1984968-50bb-44cc-a738-2d2122e6b800).to_json,
             delete_testers: false }

    Captain::TestFlight::Captaion.remove_groups(base)
  end

  desc 'add group to build'
  lane :add_group_to_build do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             group_id: '44799429-8889-479e-836d-dc4690d8a9a0',
             build_id: '21856003' }

    Captain::TestFlight::Captain.add_group_to_build(base)
  end

  lane :add_groups_to_build do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: %w(5a6912fb-9d6a-400d-8a04-471d303fcb1d a1984968-50bb-44cc-a738-2d2122e6b800).to_json,
             build_id: '23179013' }

    Captain::TestFlight::Captain.add_groups_to_build(base)
  end

  desc 'remove group from build'
  lane :remove_group_from_build do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             group_id: '44799429-8889-479e-836d-dc4690d8a9a0',
             build_id: '21856003' }

    Captain::TestFlight::Captain.remove_group_from_build(base)
  end

  lane :remove_groups_from_build do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: %w(5a6912fb-9d6a-400d-8a04-471d303fcb1d a1984968-50bb-44cc-a738-2d2122e6b800).to_json,
             build_id: '23179013' }

    Captain::TestFlight::Captain.remove_groups_from_build(base)
  end

  ### tester
  desc 'find or create user with email and add to groups'
  lane :add_tester_to_groups do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: %w[Team2020 Team2030].to_json,
             email: '814xx34435@qq.com',
             first_name: 'D',
             last_name: 'XY' }

    Captain::TestFlight::Captain.add_tester_to_group(base)
  end

  lane :add_testers_to_groups do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: '{groups}',
             testers: '{testers}' }

    Captain::TestFlight::Captain.add_testers_to_group(base)
  end

  desc 'import user from .csv file'
  lane :import_users_to_groups do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             testers_file_path: '/Users/bran/Work/SDK/SourceCode/fastlane/tiger/demo28/testers1.csv',
             groups: %w[Team2020 Team2030].to_json }

    Captain::TestFlight::Captain.import_testers_to_groups(base)
  end

  desc 'remove user from group'
  lane :remove_user_from_group do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             groups: %w[Team2020].to_json,
             email: '814523262@qq.com' }

    Captain::TestFlight::Captain.remove_tester_from_group(base)
  end

  lane :remove_users_from_group do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             group: 'Team2020',
             emails: ['378196846@qq.com', '378196746@qq.com'].to_json }

    Captain::TestFlight::Captain.remove_testers_from_group(base)
  end

  desc 'resend invite to tester if tester doesnot install app'
  lane :reinvite_tester do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             tester_id: '334160bb-577e-40e4-8cb0-178defae32c7' }

    Captain::TestFlight::Captain.resend_invite(base)
  end

  lane :reinvite_testers do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             testers: ['d083d1b1-232f-46c8-9139-02982a72348f', 'e1dd12c3-c430-47d6-8590-0d4ebf09582a'].to_json }

    Captain::TestFlight::Captain.resend_invites(base)
  end

  ### app test info
  desc 'sync application test info'
  lane :sync_app_test do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER }

    Captain::TestFlight::Captain.test_info_sync(base)
  end

  require 'pry-byebug'
  desc 'update application test info'
  lane :update_app_test_info do |_options|
    binding.pry
    info = JSON.parse(File.read('./app_test_info.json'))

    binding.pry
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             app_test_info: info.to_json }

    Captain::TestFlight::Captain.update_test_info(base)
  end

  ### submit distribute
  desc '提交审核'
  lane :distribute_test_build do |_options|
    base = { username: USER_NAME,
             app_identifier: APP_IDENTIFIER,
             build_id: '21856003',
             testInfo: '',
             betaReviewInfo: '',
             autoNotifyEnabled: true }

    Captain::TestFlight::Captain.distribute_test_build(base)
  end

  ##########################################################################

  desc 'Submit a new Beta Build to Apple TestFlight'
  desc 'This will also make sure the profile is up to date'
  private_lane :beta do
    gym(scheme: 'TestDemo') # Build your app - more options available
    pilot                   # Upload a new binary to iTunes Connect for TestFlight beta testing
  end

  desc 'Deploy a new version to the App Store'
  private_lane :release do
    gym(scheme: 'TestDemo') # Build your app - more options available
    deliver(force: true)
  end

  after_all do |lane, options|
    case lane
    when :breject
      UI.message("Version#{options[:version] ? "(#{options[:version]})" : ''} Binary reject done.")
    else
      UI.success("#{lane} Action done.")
      unless options[:url].nil?
        call_back_url = options[:url]
        UI.message("url is #{call_back_url}")
        command = "curl #{call_back_url} &> /dev/null"
        `#{command}`
        end
    end
  end

  error do |lane, exception, _options|
    case lane
    when :cdeliver
      if exception.message =~ /^Problem processing review submission.*/
        UI.error('Your App was already "Waiting for Review." State, If your want change the Metadata, Please Reject First!')
      end
    else
      UI.error("#{lane} failed => #{exception.message}")
    end
  end
end

aspector(FastlaneCore::ItunesTransporter) do
  after :upload do |ret, appid, _dir|
    UI.message("AppID #{appid} upload done : #{ret}")
    if ret

      command = "curl #{$url_ipa_callback} &> /dev/null"
      `#{command}`

      UI.success('Upload success.')
    else

      UI.error('Upload failed.')
    end
  end
end

`./fastlane/Appfile`
app_identifier "com.xxxx.xxxx" # The bundle identifier of your app
apple_id "sxxxxx@gmail.com" # Your Apple email address

team_id "xxxxxx" # Developer Portal Team ID

# you can even provide different app identifiers, Apple IDs and team names per lane:
# More information: https://github.com/fastlane/fastlane/blob/master/fastlane/docs/Appfile.md

fastlane gems

Gem Version Update-Status
fastlane 2.61.0 ✅ Up-To-Date

Loaded fastlane plugins:

No plugins Loaded

Loaded gems
Gem Version
slack-notifier 1.5.1
CFPropertyList 2.3.5
claide 1.0.2
colored2 3.1.2
nanaimo 0.2.3
xcodeproj 1.5.2
rouge 2.0.7
xcpretty 0.2.8
terminal-notifier 1.8.0
unicode-display_width 1.3.0
terminal-table 1.8.0
addressable 2.5.2
multipart-post 2.0.0
word_wrap 1.0.0
public_suffix 2.0.5
tty-screen 0.5.0
babosa 1.0.2
colored 1.2
highline 1.7.8
commander-fastlane 4.4.5
excon 0.59.0
faraday 0.13.1
unf_ext 0.0.7.4
unf 0.1.4
domain_name 0.5.20170404
http-cookie 1.0.3
faraday-cookie_jar 0.0.6
fastimage 2.1.0
gh_inspector 1.0.3
mini_magick 4.5.1
multi_json 1.12.2
multi_xml 0.6.0
rubyzip 1.2.1
security 0.1.3
xcpretty-travis-formatter 0.0.4
dotenv 2.2.1
bundler 1.15.4
faraday_middleware 0.12.2
uber 0.1.0
declarative 0.0.10
declarative-option 0.1.0
representable 3.0.4
retriable 3.1.1
mime-types-data 3.2016.0521
mime-types 3.1
little-plugger 1.1.4
logging 2.2.2
jwt 1.5.6
memoist 0.16.0
os 0.9.6
signet 0.7.3
googleauth 0.5.3
httpclient 2.8.3
google-api-client 0.13.6
json 2.1.0
io-console 0.4.6
openssl 2.0.6
plist 3.3.0

generated on: 2017-10-11

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Reactions: 2
  • Comments: 22

Most upvoted comments

The same issue for me - iTC has manually uploaded previews and only screenshots are should be uploaded. getting Your app preview can’t be uploaded because you have selected to use an app preview from a larger display size. [en-US]: Your app preview can’t be uploaded because you have selected to use an app preview from a larger display size. There is an error for 1 of your localizations.

Confirming this still happens with Fastlane 2.102

Yes this will solve it, but obviously that’s a workaround, not a solution…

I’m experiencing this issue as well. We have screenshots for one device size only, however we do have a separate app video for both the iPhone 8 and the iPhone X. We cannot remove these before running the script, as we use the script to actually submit for review. Any updates on this fix?

EDIT: I should add that we’re not actually uploading any screenshots / app previews as part of the Fastlane script. They’re all uploaded manually in advance.