zoukankan      html  css  js  c++  java
  • 最简单的Android项目

    这是我在windows环境下,试验过的最简单Android项目,只用记事本和命令行即可完成。

    环境准备

    开发环境需要Java SDK(官网下载),Android SDK(官网下载)。

    首先安装Java SDK,然后将Android SDK解压到任意目录(建议解压到某个盘根目录,方便后续命令输入)。

    接着需要下载Android SDK。打开刚才解压目录下的SDK Manager,勾选需要安装版本的SDK Platform点击Install package下载安装。

    项目建立及代码编写

    在任意地方新建一个目录,保存这个项目,然后新建一个src目录,用于存放源文件。因为Java有包的概念,所以进入src目录后,根据包名的层次,依次建立相应目录,然后新建Java源程序文件,比如:

     1 package test.android;
     2 
     3 import android.app.Activity;
     4 import android.os.Bundle;
     5 import android.app.AlertDialog;
     6 
     7 public class Mini extends Activity {
     8   public void onCreate(Bundle savedInstanceState) {
     9     super.onCreate(savedInstanceState);
    10     new AlertDialog.Builder(this).setMessage("It works.").show();
    11   }
    12 }

    将文件保存为Mini.java

    回到项目根目录,新建另一个文件,保存为AndroidManifest.xml,内容如下:

     1 <?xml version="1.0" encoding="utf-8"?>
     2 <manifest  xmlns:android="http://schemas.android.com/apk/res/android" package="test.android">
     3   <application>
     4     <activity android:name=".Mini">
     5       <intent-filter>
     6         <action android:name="android.intent.action.MAIN" />
     7         <category android:name="android.intent.category.LAUNCHER" />
     8       </intent-filter>
     9     </activity>
    10   </application>
    11 </manifest>

    还可以从这里下载演示项目。

    好了,项目至此已经完成了,下面进入编译打包环节。

    编译打包

     先打开命令行,输入javac -version,如果没有显示出java版本号,请将Java SDK的bin目录添加到path环境变量。

    把当前目录切换到项目的根目录,然后新建两个目录

    1 mkdir bin
    2 mkdir binclasses

    因为没有用到资源文件,所以第一步,直接编译Java源文件。

    1 javac -encoding utf-8 -source 1.7 -target 1.7 -bootclasspath Androidandroid-sdk-windowsplatformsandroid-23android.jar -d binclasses src	estandroidMini.java

    将编译好的文件打包成dex格式

    1 D:Androidandroid-sdk-windowsuild-tools23.0.3dx.bat --dex --output=binclasses.dex binclasses

    将资源文件打包 

    1 D:Androidandroid-sdk-windowsuild-tools23.0.3aapt.exe package -f -M AndroidManifest.xml -I Androidsdkplatformsandroid-19android.jar -F binmini

    用apkbuilder将所有文件打包成apk

    1 D:Androidandroid-sdk-windows	oolsapkbuilder.bat workspace	estandroidminimummini.apk -v -u -z D:workspace	estandroidminimuminmini -f D:workspace	estandroidminimuminclasses.dex

    高版本的Java SDK里已经不提供apkbuilder.bat了,这里将文件内容贴一下,可以自己创建一个:

     1 @echo off
     2 rem Copyright (C) 2007 The Android Open Source Project
     3 rem
     4 rem Licensed under the Apache License, Version 2.0 (the "License");
     5 rem you may not use this file except in compliance with the License.
     6 rem You may obtain a copy of the License at
     7 rem
     8 rem      http://www.apache.org/licenses/LICENSE-2.0
     9 rem
    10 rem Unless required by applicable law or agreed to in writing, software
    11 rem distributed under the License is distributed on an "AS IS" BASIS,
    12 rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    13 rem See the License for the specific language governing permissions and
    14 rem limitations under the License.
    15 
    16 rem don't modify the caller's environment
    17 setlocal
    18 
    19 rem Set up prog to be the path of this script, including following symlinks,
    20 rem and set up progdir to be the fully-qualified pathname of its directory.
    21 set prog=%~f0
    22 
    23 rem Change current directory and drive to where the script is, to avoid
    24 rem issues with directories containing whitespaces.
    25 cd /d %~dp0
    26 
    27 rem Check we have a valid Java.exe in the path.
    28 set java_exe=
    29 call libfind_java.bat
    30 if not defined java_exe goto :EOF
    31 
    32 set jarfile=sdklib.jar
    33 set frameworkdir=
    34 
    35 if exist %frameworkdir%%jarfile% goto JarFileOk
    36     set frameworkdir=lib
    37 
    38 if exist %frameworkdir%%jarfile% goto JarFileOk
    39     set frameworkdir=..framework
    40 
    41 :JarFileOk
    42 
    43 set jarpath=%frameworkdir%%jarfile%
    44 
    45 call %java_exe% -classpath %jarpath% com.android.sdklib.build.ApkBuilderMain %*

    生成签名文件

    1 keytool -genkey -alias my.keystore -keyalg RSA -validity 20000 -keypass 123456 -storepass 123456 -keystore my.keystore

    生成签名文件时,提示输入姓名单位之类都可以直接回车忽略,最后输入y确认即可

    对apk文件签名

    1 jarsigner -verbose -keystore my.keystore -keypass 123456 -storepass 123456 -signedjar mini_signed.apk mini.apk my.keystore

    这时就生成了最终的apk文件,可以安装到手机上了。

     

  • 相关阅读:
    Rust资料
    CMake & Ninja
    @Configurable
    Hibernate startup -> 配置SessionFactory实例
    Vue 渲染函数
    Spring 5 新特性
    @Configuration 注解的用途
    AOP
    AnnotationConfigApplicationContext.() -> Unit
    C编译优化
  • 原文地址:https://www.cnblogs.com/leoparadox/p/5542794.html
Copyright © 2011-2022 走看看