我知道已经存在很多blog entries,how to's,questions,其中包含Android 3.0应用的向后兼容性。
然而,在阅读完所有内容后,我比以前更加困惑。 :(
我拥有支持min的智能手机应用程序。 SDK版本8(2.2)。
我现在希望这个在智能手机上保持不变,但也会在带有动作栏和碎片的Honeycomb平板电脑上提供一个花哨的版本等等。
我知道有兼容包,但我读到的只是片段。 Action Bar和全息主题有什么用?通过在我的平板电脑上将targetSdkVersion更改为“11”,我确实得到了非常好的和简单的。我怎么能用兼容包来达到这个目的?
或者你会说开发两个不同版本的程序会更好吗? (也许以后可能将它们合并在一起?)
亲切的问候, 水母
答案 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