北京Android培训
达内北京潘家园中心

010-62126400

热门课程

四道经典android问答题推荐

  • 时间:2015-07-21
  • 发布:达内Android培训
  • 来源:北京达内

1.在android中,请简述jni的调用过程。

2.简述Android应用程序结构是哪些?

3. 请继承SQLiteOpenHelper实现:

1).创建一个版本为1的“diaryOpenHelper.db”的数据库,

2).同时创建一个 “diary” 表(包含一个_id主键并自增长,topic字符型100

长度, content字符型1000长度)

3).在数据库版本变化时请删除diary表,并重新创建出diary表。

4.页面上现有ProgressBar控件progressBar,请用书写线程以10秒的的时间完成其进度

显示工作。

问答题答案

1.jni的调用过程

1)安装和下载Cygwin,下载 Android NDK

2)在ndk项目中JNI接口的设计

3)使用C/C++实现本地方法

4)JNI生成动态链接库.so文件

5)将动态链接库复制到java工程,在java工程中调用,运行java工程即可

2.

Android应用程序结构是:

Linux Kernel(Linux内核)、Libraries(系统运行库或者是c/c++核心库)、Application

Framework(开发框架包)、Applications (核心应用程序)

3.

public class DBHelper extends SQLiteOpenHelper {

publicfinal static String DATABASENAME = "diaryOpenHelper.db";

publicfinal static int DATABASEVERSION = 1;

//创建数据库

publicDBHelper(Context context,String name,CursorFactory factory,int version)

{

super(context,name, factory, version);

}

//创建表等机构性文件

publicvoid onCreate(SQLiteDatabase db)

{

Stringsql ="create table diary"+

"("+

"_idinteger primary key autoincrement,"+

"topicvarchar(100),"+

"contentvarchar(1000)"+

")";

db.execSQL(sql);

}

//若数据库版本有更新,则调用此方法

publicvoid onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion)

{

Stringsql = "drop table if exists diary";

db.execSQL(sql);

this.onCreate(db);

}

}

4.

public class ProgressBarStu extendsActivity {

privateProgressBar progressBar = null;

protectedvoid onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.progressbar);

//从这到下是关键

progressBar= (ProgressBar)findViewById(R.id.progressBar);

Threadthread = new Thread(new Runnable() {

@Override

publicvoid run() {

intprogressBarMax = progressBar.getMax();

try{

while(progressBarMax!=progressBar.getProgress())

{

intstepProgress = progressBarMax/10;

intcurrentprogress = progressBar.getProgress();

progressBar.setProgress(currentprogress+stepProgress);

Thread.sleep(1000);

}

}catch (InterruptedException e) {

//TODO Auto-generated catch block

e.printStackTrace();

}

}

});

thread.start();

//关键结束

}

}

上一篇:10道android填空题及答案
下一篇:安卓工程师面试题实测

达内准备的Android面试小测

达内教你如何成为一名Android开发者

安卓面试选择题集锦

安卓面试题帮你查缺补漏

选择城市和中心
贵州省

广西省

海南省