16、编写适应多个API Level的APK
确认您是否需要多apk支持
当你试图创建一个支持跨多代android系统的应用程序时,很自然的 你希望你的应用程序可以在新设备上使用新特性,并且不会牺牲向后兼 容。刚开始的时候认为通过创建多个apk去支持多设备是最好的解决方案, 但是往往不是这样。而是使用单个的apk去替代多个apk,这样做会带来 很多好处。
单个APK的好处
1. 发布和测试简单
2. 只需维护一个代码库
3. 应用程序可以适应不同配置的设备
4. App可以跨设备运行
5. 不必考虑market的要求,apk的升级或者apk属于哪类设备
共享代码需求
无论你是修改一个已经存在的Android应用程序还是开始创建一个新 的程序,首先最重要的任务就是创建一个共用代码库。把那些只需更新 一次就可以减少项目的开发时间,减少项目错误的代码或者资源放进这 个库工程里(比如可以放在代码库里的像本地化语言字符串,颜色主题, 共用bug的修复等)。
修改AndroidManifest.xml文件
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode"1.0" package="com.example.foo">
<uses-sdk android:minSdkVersion="3" />
...
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode"1.0" package="com.example.foo">
<uses-sdk android:minSdkVersion="7" />
...
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:versionCode"1.0" package="com.example.foo">
<uses-sdk android:minSdkVersion="11" />
...
发布前的检查
往google play或其他应用市场上传程序之前,一定要根据下面的条目仔细的 检查下程序。记住,这些条目与多apk支持关系非常密。例如,所有的apk必须有 相同的包名。所有的apk必须用相同的数字证书签名。如果apk有系统版本重合的 地方,必须定义最低与最低版本号等。
16、编写适应多个API Level的APK的更多相关文章
- 版本和API Level对照表
版本和API Level对照表 Code name Version API level (no code name) 1.0 API level 1 (no code name) 1.1 API le ...
- Call requires API level 21(Current min is 16)
Call requires API level 21(Current min is 16) Android开发中,遇到类似这种问题,如何处理? 一种办法是提升sdk最低版本到21,在Android s ...
- Android API Level在11前后及16之后时Notification的不同用法
作为刚入门Android的小白,最近在按照郭大神的<第一行代码>在练习,在用到Notification时遇到了一些问题,网上资料比较零散,我这里做了一个总结分析给各位,若有错误,恳请指正~ ...
- Android版本和API Level对应关系
http://developer.android.com/guide/topics/manifest/uses-sdk-element.html Platform Version API ...
- Android版本与api Level
Platform Version API Level VERSION_CODE Notes Android 4.4 19 KITKAT Platform Highlights Android 4.3 ...
- 使用ClipboardUtils兼容API LEVEL 11以下实现复杂粘贴
实现功能:复杂粘贴内容 问题描述:android.content.ClipboardManager在APILevel 11之后才可以使用,而我们目前还要兼容API Level 10(2.3.3) 解决 ...
- Android SDK之API Level
Android SDK之API Level Android SDK API_LEVEL Platform Version API Level VERSION_CODE Android 4.2, 4.2 ...
- Android系统版本与API Level对照表
Platform Version API Level VERSION_CODE Notes Android 4.2 17 JELLY_BEAN_MR1 Android 4.1, 4.1.1 16 ...
- 【转】Android版本和API Level对应关系
原文网址:http://blog.csdn.net/huiguixian/article/details/39928027 从Android developer copy过来,留作笔记的. Platf ...
随机推荐
- POJ3080Blue Jeans
http://poj.org/problem?id=3080 题意 : 给你几个DNA序列,让你找他们的共同的最长的子串,若是子串长度小于3,就输出no significant commonaliti ...
- Project Euler 83:Path sum: four ways 路径和:4个方向
Path sum: four ways NOTE: This problem is a significantly more challenging version of Problem 81. In ...
- 如何在React中使用CSS3动画
一.需求 1.在页面添加item时要有渐变效果 2.单击item可删除,带渐变效果 二.代码 1.通过Reacat插件ReactCSSTransitionGroup实现 <!DOCTYPE ht ...
- AO创建IFeature的两种方法
原文地址:http://www.cnblogs.com/MyLucifer/archive/2010/12/01/1893212.html 在ArcGIS Resouce Center中,ESRI介绍 ...
- flex布局全解析
前言 很长一段时间, 我知道有flex这个布局方式, 但是始终没有去学它. 3点原因: 感觉还比较新, 担心兼容性不好. 普通的布局方式能满足我的绝大多数需求. 好像蛮复杂的. 最近由于开发需要, 学 ...
- 如何用Maven创建一个普通Java项目
一下内容包括:用Maven创建一个普通Java项目,并把该项目转成IDEA项目,导入到IDEA,最后把这个项目打包成一个jar文件. 有时候运行mvn命令失败,重复运行几次就OK了,无解(可能因为网络 ...
- 如何写科技文章的讨论discussion部分
众所周知,讨论部分是在结合自己的研究结果基础上,对整个文章的结论的提炼和升华.这一部分是整个论文的精,往往点睛作用. 同时,很多杂志要求结果和讨论分开,这也就更突出了写好讨论的重要性. 那么,我们应该 ...
- JVM学习笔记(一)------基本结构
从Java平台的逻辑结构上来看,我们可以从下图来了解JVM: 从上图能清晰看到Java平台包含的各个逻辑模块,也能了解到JDK与JRE的区别 对于JVM自身的物理结构,我们可以从下图鸟瞰一下: 对于J ...
- 使用eclipse的快捷键自动生成的map或者reduce函数的参数中:“org.apache.hadoop.mapreduce.Reducer.Context context”
今天在测试mapreduce的程序时,就是简单的去重,对照课本上的程序和自己的程序,唯一不同的就是“org.apache.hadoop.mapreduce.Reducer.Context contex ...
- C# MySQL 数据库操作类
using System; using System.Configuration; using System.Collections; using System.Data; using MySql.D ...