我有一个用monaca开发的android应用程序。我的一些用户有一部三星S7手机。当他们安装该应用程序时,它会说它不兼容。我查看了play开发者控制台中的设备目录,上面说所有Galaxy S7都支持。
该应用程序不使用任何特殊权限,我找不到只有三星手机出现此问题的任何原因。它也不是一个大应用程序(~2.5MB)。
这是config.xml文件:
<?xml version='1.0' encoding='utf-8'?>
<widget id="" version="1.0.3" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android">
<name></name>
<description>Made with Monaca (http://monaca.mobi)</description>
<author />
<content src="index.html" />
<allow-navigation href="*" />
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<preference name="loglevel" value="DEBUG" />
<preference name="AndroidLaunchMode" value="singleTop" />
<preference name="ErrorUrl" value="" />
<preference name="SplashScreen" value="screen" />
<preference name="AllowInlineMediaPlayback" value="false" />
<preference name="BackupWebStorage" value="cloud" />
<preference name="FadeSplashScreenDuration" value="250" />
<preference name="KeyboardDisplayRequiresUserAction" value="true" />
<preference name="MediaPlaybackRequiresUserAction" value="false" />
<preference name="SuppressesIncrementalRendering" value="false" />
<preference name="TopActivityIndicator" value="gray" />
<preference name="GapBetweenPages" value="0" />
<preference name="PageLength" value="0" />
<preference name="PaginationBreakingMode" value="page" />
<preference name="PaginationMode" value="unpaginated" />
<feature name="LocalStorage">
<param name="ios-package" value="CDVLocalStorage" />
</feature>
<preference name="UIWebViewDecelerationSpeed" value="normal" />
<preference name="KeyboardShrinksView" value="true" />
<platform name="ios">
<icon height="60" src="/res/ios/icon/icon-60.png" width="60" />
<icon height="120" src="/res/ios/icon/icon-60@2x.png" width="120" />
<icon height="180" src="/res/ios/icon/icon-60@3x.png" width="180" />
<icon height="76" src="/res/ios/icon/icon-76.png" width="76" />
<icon height="152" src="/res/ios/icon/icon-76@2x.png" width="152" />
<icon height="80" src="/res/ios/icon/icon-40@2x.png" width="80" />
<icon height="29" src="/res/ios/icon/icon-small.png" width="29" />
<icon height="58" src="/res/ios/icon/icon-small@2x.png" width="58" />
<icon height="87" src="/res/ios/icon/icon-small@3x.png" width="87" />
<icon height="167" src="/res/ios/icon/icon-83.5@2x~ipad.png" width="167" />
<icon height="144" src="/res/ios/icon/icon-72@2x.png" width="144" />
<icon height="72" src="/res/ios/icon/icon-72.png" width="72" />
<icon height="100" src="/res/ios/icon/icon-50@2x.png" width="100" />
<icon height="57" src="/res/ios/icon/icon.png" width="57" />
<icon height="114" src="/res/ios/icon/icon@2x.png" width="114" />
<icon height="40" src="/res/ios/icon/icon-40.png" width="40" />
<icon height="50" src="/res/ios/icon/icon-50.png" width="50" />
<splash height="480" src="/res/ios/screen/Default~iphone.png" width="320" />
<splash height="960" src="/res/ios/screen/Default@2x~iphone.png" width="640" />
<splash height="1334" src="/res/ios/screen/Default-667h.png" width="750" />
<splash height="1136" src="/res/ios/screen/Default-568h@2x~iphone.png" width="640" />
<splash height="2208" src="/res/ios/screen/Default-736h.png" width="1242" />
<splash height="1242" src="/res/ios/screen/Default-Landscape-736h.png" width="2208" />
<splash height="1024" src="/res/ios/screen/Default-Portrait~ipad.png" width="768" />
<splash height="768" src="/res/ios/screen/Default-Landscape~ipad.png" width="1024" />
<splash height="2048" src="/res/ios/screen/Default-Portrait@2x~ipad.png" width="1536" />
<splash height="1536" src="/res/ios/screen/Default-Landscape@2x~ipad.png" width="2048" />
<config-file parent="CFBundleLocalizations" platform="ios" target="*-Info.plist">
<array>
<string>en</string>
</array>
</config-file>
</platform>
<platform name="android">
<icon density="ldpi" src="/res/android/icon/ldpi.png" />
<icon density="mdpi" src="/res/android/icon/mdpi.png" />
<icon density="hdpi" src="/res/android/icon/hdpi.png" />
<icon density="xhdpi" src="/res/android/icon/xhdpi.png" />
<icon density="xxxhdpi" src="/res/android/icon/xxxhdpi.png" />
<icon density="xxhdpi" src="/res/android/icon/xxhdpi.png" />
<splash density="port-ldpi" src="/res/android/screen/splash-port-ldpi.9.png" />
<splash density="port-mdpi" src="/res/android/screen/splash-port-mdpi.9.png" />
<splash density="port-hdpi" src="/res/android/screen/splash-port-hdpi.9.png" />
<splash density="port-xhdpi" src="/res/android/screen/splash-port-xhdpi.9.png" />
<splash density="port-xxhdpi" src="/res/android/screen/splash-port-xxhdpi.9.png" />
<splash density="port-xxxhdpi" src="/res/android/screen/splash-port-xxxhdpi.9.png" />
<config-file parent="/*" target="AndroidManifest.xml">
<compatible-screens>
<screen android:screenDensity="ldpi" android:screenSize="small" />
<screen android:screenDensity="mdpi" android:screenSize="small" />
<screen android:screenDensity="hdpi" android:screenSize="small" />
<screen android:screenDensity="xhdpi" android:screenSize="small" />
<screen android:screenDensity="xxhdpi" android:screenSize="small" />
<screen android:screenDensity="xxxhdpi" android:screenSize="small" />
<screen android:screenDensity="ldpi" android:screenSize="normal" />
<screen android:screenDensity="mdpi" android:screenSize="normal" />
<screen android:screenDensity="hdpi" android:screenSize="normal" />
<screen android:screenDensity="xhdpi" android:screenSize="normal" />
<screen android:screenDensity="xxhdpi" android:screenSize="normal" />
<screen android:screenDensity="xxxhdpi" android:screenSize="normal" />
<screen android:screenDensity="560" android:screenSize="normal" />
</compatible-screens>
</config-file>
</platform>
<platform name="windows">
<icon src="/res/winrt/icon/package_logo_winrt.png" target="StoreLogo" />
<icon src="/res/winrt/icon/app_logo_winrt.png" target="Square150x150Logo" />
<icon src="/res/winrt/icon/app_small_logo_winrt.png" target="Square30x30Logo" />
<icon src="/res/winrt/icon/app_tile_wide_logo_winrt.png" target="Wide315x150Logo" />
<splash height="300" src="/res/winrt/screen/app_splash_screen_winrt.png" width="620" />
</platform>
<platform name="chrome">
<icon height="128" src="/platforms/chrome/icon.png" width="128" />
</platform>
<preference name="WindowsStorePublisherName" value="My Name" />
<preference name="WindowsStoreIdentityName" value="7f6c64e1-c804-8b64-e1ff-232dc96ea114" />
<preference name="ios-XCBuildConfiguration-TARGETED_DEVICE_FAMILY" value="1" />
<preference name="AutoHideSplashScreen" value="true" />
<preference name="FadeSplashScreen" value="true" />
<preference name="ShowSplashScreenSpinner" value="false" />
<preference name="EnableViewportScale" value="false" />
<preference name="SplashShowOnlyFirstTime" value="false" />
<access origin="*" />
<preference name="KeepRunning" value="true" />
<preference name="monaca:AndroidIsPackageNameSeparate" value="true" />
<preference name="DisallowOverscroll" value="true" />
<preference name="Orientation" value="portrait" />
<preference name="SplashScreenDelay" value="3000" />
<preference name="Fullscreen" value="false" />
<plugin name="ionic-plugin-keyboard" spec="~2.2.1" />
</widget>
我只开发了一年半,这是我第一个堆栈溢出的问题。如果我在发布这篇文章时犯了任何n00b错误,请提前道歉。。。
提前感谢任何花时间阅读这篇文章的人!
我怀疑这是您的兼容屏幕列表。我不确定你的config.xml文件是如何转换成Android清单的,因为我不熟悉monaca
框架,但在我看来,你的应用程序只支持小屏幕和普通屏幕。拒绝所有大屏幕和超大屏幕以及某些密度。
<兼容屏幕>标签状态:
注意:通常,您不应该使用此清单元素。使用此元素可以显著减少应用程序的潜在用户群,因为如果用户的设备具有您未列出的屏幕配置,则不允许用户安装您的应用程序。当应用程序绝对不能与特定的屏幕配置一起工作时,您应该将其作为最后的手段。您不应该使用此元素,而应该遵循"支持多个屏幕"指南,使用不同屏幕大小和密度的替代布局和位图为多个屏幕提供可扩展的支持。
我建议你听从他们的建议,假设你的框架允许。例如,我的应用程序的屏幕大小/密度兼容性策略在清单中的一行中实现:
<supports-screens android:smallScreens="false" />
支持除小屏幕外的所有屏幕。