Android:如何为智能手机和平板电脑设计应用程序?

时间:2011-05-27 11:39:50

标签: android sdk backwards-compatibility android-3.0-honeycomb android-support-library

我知道已经存在很多blog entrieshow to'squestions,其中包含Android 3.0应用的向后兼容性。

然而,在阅读完所有内容后,我比以前更加困惑。 :(

我拥有支持min的智能手机应用程序。 SDK版本8(2.2)。

我现在希望这个在智能手机上保持不变,但也会在带有动作栏和碎片的Honeycomb平板电脑上提供一个花哨的版本等等。

我知道有兼容包,但我读到的只是片段。 Action Bar和全息主题有什么用?通过在我的平板电脑上将targetSdkVersion更改为“11”,我确实得到了非常好的和简单的。我怎么能用兼容包来达到这个目的?

或者你会说开发两个不同版本的程序会更好吗? (也许以后可能将它们合并在一起?)

亲切的问候, 水母

2 个答案:

答案 0 :(得分:5)

保留一个apk,只为您的平板电脑使用替代资源。

看看:

http://code.google.com/p/iosched/source/browse/#hg%2Fandroid%2Fres

这个节目是你在同一个APK中如何定位SmartPhones和平板电脑(带蜂窝)的目录结构。

修改

  

Honeycomb上的花哨版本

使用Fragments不会改变你的蜂窝UI,这只是一种重用代码的方法。因此,您不需要片段来使您的UI“花哨”

编辑2

要查找当前正在运行的Android版本,您可以执行类似

的操作
int b = Integer.parseInt(Build.VERSION.SDK);              
if(b >= Build.VERSION_CODES.HONEYCOMB){
      Log.i(TAG, "Found A Tablet Running Honeycomb or newer");                  
 }

编辑3

在您的活动通话getActionBar();中,您可以访问此处所述的所有操作栏方法:http://developer.android.com/reference/android/app/ActionBar.html

答案 1 :(得分:2)

今年Google IO上有关于这个主题的讨论。现已在YouTube上发布http://www.youtube.com/watch?v=WGIU2JX1U5Y&feature=youtube_gdata_player