Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:如何为智能手机和平板电脑设计应用程序?_Android_Sdk_Backwards Compatibility_Android 3.0 Honeycomb_Android Support Library - Fatal编程技术网

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

Android:如何为智能手机和平板电脑设计应用程序?,android,sdk,backwards-compatibility,android-3.0-honeycomb,android-support-library,Android,Sdk,Backwards Compatibility,Android 3.0 Honeycomb,Android Support Library,我知道已经有很多关于Android 3.0应用程序向后兼容性的内容 然而,读完这些之后,我只是比以前更困惑了( 我拥有的是一款支持min.SDK版本8(2.2)的智能手机应用程序 我现在希望这一款在智能手机上保持不变,但在蜂窝平板电脑上也提供了一款别致的版本,带有动作条和碎片等等 我知道有兼容包,但我所读到的都是关于碎片的。操作栏和全息主题是怎么回事?我只是在平板电脑上将targetSdkVersion更改为“11”就很容易做到了。我怎么能用兼容包做到这一点 或者你会说开发两个不同版本的程序更好

我知道已经有很多关于Android 3.0应用程序向后兼容性的内容

然而,读完这些之后,我只是比以前更困惑了(

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

我现在希望这一款在智能手机上保持不变,但在蜂窝平板电脑上也提供了一款别致的版本,带有动作条和碎片等等

我知道有兼容包,但我所读到的都是关于碎片的。操作栏和全息主题是怎么回事?我只是在平板电脑上将targetSdkVersion更改为“11”就很容易做到了。我怎么能用兼容包做到这一点

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

亲切问候,,
水母

保留一个apk,只需为平板电脑使用其他资源即可

看看:

本节目向您展示了如何在同一APK中定位智能手机和平板电脑(带蜂巢)的目录结构

编辑

蜂窝上的花式版本

在蜂巢中使用碎片不会改变你的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


在您的活动呼叫中,您可以访问此处所述的所有操作栏方法:

今年在Google IO上有一个关于这个主题的演讲。现在可在YouTube上获得

/layout-xlarge-v11/是指布局文件-X大屏幕(7英寸以上)-版本11是蜂窝状的。也就是说,在加载到表上时使用此文件夹中的布局,但要与兼容包一起加载,对吗?->否则,就不会有“碎片”,可以吗?如果您愿意,您可以在布局文件中使用片段,是的,您需要片段库。建议使用片段。正如您所说的,另一种方法是在类加载时(有意等)检查SDK版本,如果(平板电脑)在活动调用getActionBar()中运行HomeActivityTablet.java else HomeActivity.javaErm;然后您可以访问此处所述的所有操作栏方法:以及手机上可用的方法:-)尝试以下链接: