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 ...
随机推荐
- java基础知识回顾之javaIO类--RandomAccessFile类
java.io 类 RandomAccessFile java.lang.Object java.io.RandomAccessFile1.该类不是IO流中的子类.2.该类既能读又能写.3.该对象内部 ...
- NET 使用HtmlAgilityPack抓取网页数据
刚刚学习了XPath路径表达式,主要是对XML文档中的节点进行搜索,通过XPath表达式可以对XML文档中的节点位置进行快速定位和访问,html也是也是一种类似于xml的标记语言,但是语法没有那么严谨 ...
- lintcode :nth to Last Node In List 链表倒数第n个节点
题目: 链表倒数第n个节点 找到单链表倒数第n个节点,保证链表中节点的最少数量为n. 样例 给出链表 3->2->1->5->null和n = 2,返回倒数第二个节点的值1. ...
- sed and awk学习笔记
sed and awk 背景 awk起源追溯至sed和grep,进而追溯至共同的行编辑器ed.实用工具grep来源于ed命令:g/re/p .实用工具awk和sed有一个共同的选项-f用于指定脚本的名 ...
- JavaWeb项目开发案例精粹-第3章在线考试系统-006实体层
1. package com.sanqing.po; /* * 学生表,保存学生编号,系统密码 */ public class Student { private String studentID; ...
- JavaWeb项目开发案例精粹-第3章在线考试系统-004Service层
1. package com.sanqing.service; import java.util.List; import com.sanqing.po.Student; public interfa ...
- Ping 命令
Ping”命令是我们在判断网络故障常用的命令 它是用来检查网络是否通畅或者网络连接速度的命令. 它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包, 对方就要 ...
- ListView(2)最简单的上拉刷新,下拉刷新
最简单的上拉刷新和下拉刷新,当listview滚动到底部时向上拉刷新数据.当listview滚动到最顶部时下拉刷新. 图1,上拉刷新 图2,下拉刷新 1,设置lisview,加载heade ...
- Java开发之单例设计模式
设计模式之单例模式: 一.单例模式实现特点:①单例类在整个应用程序中只能有一个实例(通过私有无参构造器实现):②单例类必须自己创建这个实例并且可供其他对象访问(通过静态公开的访问权限修饰的getIns ...
- vim常用命令 vim键盘布局
vim键盘布局,vim快捷键 vim常用命令: