2011-09-19 116 views
32

我必须为Android手机开发一款平板电脑应用程序。 应用程序逻辑是相同的,而UI则完全不同。 我想知道我应该如何处理这个问题:为这两个应用程序创建一个大应用程序,或者为手机和平板电脑应用程序创建一个应用程序(然后将2个apk作为1应用程序在市场上载)。适用于手机和平板电脑的Android应用程序:1个或2个应用程序?

当我发出1个应用程序时,我应该检查它是否是手机或平板电脑的代码,以重定向到适当的活动。此外,我应该包含兼容性代码,以便为手机进行编译。 如果我制作2个应用程序,我不需要检查,也不需要包含兼容性代码,所以应用程序会小很多。但在这种情况下,我必须在开发时不断将应用程序逻辑从一个项目复制/粘贴到另一个项目。

所以这就是为什么我想知道,这种情况下最好的做法是什么? 我一直在寻找关于这方面的信息,但是我只找到关于如何管理不同xml布局的文章,或者没有那么多信息的文章。

回答

3

当然要制作一个应用程序。

Android的设计非常适合各种设备,它根据设备的功能从res /文件夹中自动选择资源对您有很大的帮助。 您可以为大屏幕与小屏幕,纵向与横向,平板电脑与手机等完全不同的屏幕布局。

而且您的代码只写入/维护一次。

当然,您会根据加载的布局是否具有特定的视图(例如仅在大屏幕上加载)而有条件地添加代码,并有条件地在其中存在额外的数据(如果存在)。

在Android开发者网站了解如何支持多屏幕,多台Android版本,兼容模式与旧的Android版本读取文件等

此外,如果你的船就一个应用程序,你会得到一个用户的反馈/在Android Market上评级,而不是在两个单独的应用程序。

+0

“另外,如果你的船就一个应用程序,你在Android Market获得单个用户的反馈/评价,而不是2个独立的应用程序。” 那么它可以在市场上创建1个应用程序,而它实际上有2个apk文件。这就是我正在考虑的事情。 – Arne517

6

当然使一个应用程序。

您可以为手机和平板电脑创建不同的布局文件。对于平板电脑,您应该在res文件夹中创建额外的布局文件,该文件夹称为layout-large(对于平板电脑),对于提供默认布局文件的手机,并且同时对于横向模式,您可以创建一个名为layout-large-景观(片剂),手机布局,景观

create extra resourse folders like this

,并添加一些标签,支持多屏幕:

  1. <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="9"/>
  2. <supports-screens android:anyDensity="true" />
相关问题