如果我想让一个应用程序与平板电脑和移动设备兼容,我应该为移动设备创建一个项目,另一个为平板电脑使用相同的屏幕项目吗?感谢您的答复
5 回答
绝对为两者使用一个项目,除非它们具有完全不同的功能。通过为不同的屏幕尺寸提供不同的布局文件,您可以针对该项目中的每种设备类型调整您的应用程序的外观。看看这篇文章。
您可以为手机和平板电脑创建一个 apk。
看看下面的链接
http://developer.android.com/google/play/publishing/multiple-apks.html
上面的链接中有引用说 我们鼓励您开发和发布一个支持尽可能多的设备配置的单个 APK,这样做有时是不可能的
因此,制作一个支持尽可能多设备的应用程序。仅在需要时考虑使用多个 apk。
http://developer.android.com/guide/topics/manifest/supports-screens-element.html 例如,下面是一个应用程序中的资源目录列表,它为不同的屏幕尺寸和不同的位图drawables提供了不同的布局设计适用于中、高和超高密度屏幕。
为不同的屏幕尺寸设计不同的布局
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
手机和平板电脑的 main_activity.xml
res/layout/main_activity.xml # For handsets
res/layout-sw600dp/main_activity.xml # For tablets
还可以查看下面的链接以了解多版本
http://www.youtube.com/watch?v=amZM8oZBgfk
http://gargengineer.blogspot.in/2012/02/creating-android-phone-tablet.html
是的,您必须为要支持的所有设备创建一个项目。为了支持不同的屏幕尺寸和分辨率,您必须遵循一些指导方针。您已经知道应用程序开发过程中最大的问题之一是设备碎片。所以你可以在 res/layout 目录下实现不同的布局。您必须至少设计布局,布局小,布局大,布局-xlarge。请记住,显示方向可能会发生变化,因此您还应该实现 layout-land 等。关于图像,您必须为不同的设备屏幕密度创建不同的图像。 您可以使用新的选择器,例如 layout-swxxxdp,其中 xxx 是分辨率。 特别是在 res/drawable res/drawable-mdpi res/drawable-ldpi res/drawable-hdpi 下。您也可以支持更多的屏幕密度。 使用不同的布局可能不足以满足您的应用程序。所以你可以考虑使用给你更多自由的片段,你可以重用你的代码。 您可以混合布局和片段以更好地控制布局。特别是如果您想支持平板电脑和智能手机,我建议您使用片段。有关更多信息,您可以在此处和此处查看片段。
为不同的屏幕尺寸使用不同的资源/布局文件夹。他们不需要为平板电脑和移动设备创建单独的项目。利用 android 中根据设备屏幕尺寸自动调整大小的九补丁图像。
不同功能的设备支持同一应用程序的不同 APK。
关键问题是,你能想出一种方法来让你的应用在小屏幕和大屏幕上使用相同或模块化的用户界面看起来不错。此外,您可能想要提供仅在功能更强大的设备上运行的高端版本。
在某些情况下,您可能希望拥有不同的 APK,但您必须了解成本。
但是,实际上,如果您查看市场上的许多应用程序,开发人员根本不知道如何优雅地处理不同的屏幕尺寸。
关于您上面的评论,如果它具有相同的功能:如果您问我,这不是关键问题。尽管这取决于您所说的功能。