 确认您是否需要多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的更多相关文章

  1. 版本和API Level对照表

    版本和API Level对照表 Code name Version API level (no code name) 1.0 API level 1 (no code name) 1.1 API le ...

  2. Call requires API level 21(Current min is 16)

    Call requires API level 21(Current min is 16) Android开发中,遇到类似这种问题,如何处理? 一种办法是提升sdk最低版本到21,在Android s ...

  3. Android API Level在11前后及16之后时Notification的不同用法

    作为刚入门Android的小白,最近在按照郭大神的<第一行代码>在练习,在用到Notification时遇到了一些问题,网上资料比较零散,我这里做了一个总结分析给各位,若有错误,恳请指正~ ...

  4. Android版本和API Level对应关系

    http://developer.android.com/guide/topics/manifest/uses-sdk-element.html Platform Version       API ...

  5. Android版本与api Level

    Platform Version API Level VERSION_CODE Notes Android 4.4 19 KITKAT Platform Highlights Android 4.3 ...

  6. 使用ClipboardUtils兼容API LEVEL 11以下实现复杂粘贴

    实现功能:复杂粘贴内容 问题描述:android.content.ClipboardManager在APILevel 11之后才可以使用,而我们目前还要兼容API Level 10(2.3.3) 解决 ...

  7. Android SDK之API Level

    Android SDK之API Level Android SDK API_LEVEL Platform Version API Level VERSION_CODE Android 4.2, 4.2 ...

  8. Android系统版本与API Level对照表

    Platform Version API Level VERSION_CODE Notes Android 4.2 17 JELLY_BEAN_MR1   Android 4.1, 4.1.1 16 ...

  9. 【转】Android版本和API Level对应关系

    原文网址:http://blog.csdn.net/huiguixian/article/details/39928027 从Android developer copy过来,留作笔记的. Platf ...

随机推荐

  1. Hibernate3中将指定的HQL语句转换成SQL语句

    import org.hibernate.engine.SessionFactoryImplementor; import org.hibernate.hql.ast.QueryTranslatorI ...

  2. hdu 2582 f(n) 数学

    打表找规律: 当n为质数是,GCD(n)=n; 当n为质数k的q次方时,GCD(n)=k; 其他情况,GCD(n)=1. 代码如下: #include<iostream> #include ...

  3. android 上下文菜单详解

    本文使用xml来创建上下文菜单 <?xml version="1.0" encoding="utf-8"?> <menu xmlns:andr ...

  4. lintcode 中等题:k Sum ii k数和 II

    题目: k数和 II 给定n个不同的正整数,整数k(1<= k <= n)以及一个目标数字. 在这n个数里面找出K个数,使得这K个数的和等于目标数字,你需要找出所有满足要求的方案. 样例 ...

  5. Java学习笔记之:Java 继承

    一.引言 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承可以理解为一个对象从另一个对象获取属性的过程. 如果类A是类B的父类,而类B是类C的父类,我们也称C是A的子类,类 ...

  6. Intellij IDEA创建javaWeb以及Servlet简单实现

    1.创建web工程 File --> New --> Project...

  7. Android TextView多行文本滚动实现

    Android中我们为了实现文本的滚动可以在ScrollView中嵌入一个TextView,其实TextView自己也可以实现多行滚动的,毕竟ScrollView必须只能有一个直接的子类布局.只要在l ...

  8. HDFS小文件处理——Mapper处理

    处理小文件的时候,可以通过org.apache.hadoop.io.SequenceFile.Writer类将所有文件写出到一个seq文件中. 大致流程如下: 实现代码: package study. ...

  9. 1450. Russian Pipelines(spfa)

    1450 水题 最长路 #include <iostream> #include<cstdio> #include<cstring> #include<alg ...

  10. 高斯消元 分析 && 模板 (转载)

    转载自:http://hi.baidu.com/czyuan_acm/item/dce4e6f8a8c45f13d7ff8cda czyuan 先上模板: /* 用于求整数解得方程组. */ #inc ...