我有一个用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错误,请提前抱歉...
并提前感谢任何花时间阅读此内容的人!
答案 0 :(得分:0)
我怀疑它是您的兼容屏幕列表。我无法确定您的config.xml文件如何转换为Android清单,因为我不熟悉monaca
框架,但在我看来,您的应用只支持小而正常屏幕尺寸。拒绝所有大屏幕和xlarge屏幕以及一些密度。
&lt; compatible-screens&gt;的文档标签状态:
警告:通常,您不应使用此清单元素。使用此元素可以显着减少应用程序的潜在用户群,如果用户的设备具有未列出的屏幕配置,则不允许用户安装应用程序。当应用程序绝对不适用于特定的屏幕配置时,您应该仅将其用作最后的手段。您应该遵循支持多个屏幕的指南,而不是使用此元素,以使用不同的屏幕尺寸和密度的替代布局和位图为多个屏幕提供可扩展的支持。
我建议您遵循他们的建议,假设您的框架允许它。例如,我的应用程序的屏幕尺寸/密度兼容性策略在清单中的一行中实现:
<supports-screens android:smallScreens="false" />
支持除小屏幕以外的所有屏幕。