Android開發(fā)工程師經(jīng)典面試題
1
1. Android中常用的四個(gè)布局:
framlayout,linenarlayout,relativelayout和tablelayout。
2
Android 的四大組件:
activiey,service,broadcast和contentprovide。
3
java.io包中的objectinputstream和objectoutputstream類
主要用于對(duì)對(duì)象(Object)的讀寫。
4
Android 中service的實(shí)現(xiàn)方法是:
startservice和bindservice。
5
activity一般會(huì)重載7個(gè)方法用來維護(hù)其生命周期,
除了onCreate(),onStart(),onDestory() 外還有onrestart,onresume,onpause,onstop。
6
Android的數(shù)據(jù)存儲(chǔ)的方式:
sharedpreference,文件,SQlite,contentprovider,網(wǎng)絡(luò)。
7
當(dāng)啟動(dòng)一個(gè)Activity
并且新的Activity執(zhí)行完后需要返回到啟動(dòng)它的Activity來執(zhí)行的回調(diào)函數(shù)是startActivityResult()。
8
請(qǐng)使用命令行的`方式
創(chuàng)建一個(gè)名字為myAvd,sdk版本為2.2,sd卡是在d盤的根目錄下,名字為scard.img,并指定屏幕大小HVGA.____________________________________。
9
程序運(yùn)行的結(jié)果是:
_____good and gbc__________。
public classExample{
String str=new String("good");
char[]ch={'a','b','c'};
public static void main(String args[]){
Example ex=new Example();
ex.change(ex.str,ex.ch);
System.out.print(ex.str+" and ");
Sytem.out.print(ex.ch);
}
public void change(String str,char ch[]){
str="test ok";
ch[0]='g';
}
}
10
在android中,請(qǐng)簡(jiǎn)述jni的調(diào)用過程。
1)安裝和下載Cygwin,下載 Android NDK
2)在ndk項(xiàng)目中JNI接口的設(shè)計(jì)
3)使用C/C++實(shí)現(xiàn)本地方法
4)JNI生成動(dòng)態(tài)鏈接庫(kù).so文件
5)將動(dòng)態(tài)鏈接庫(kù)復(fù)制到j(luò)ava工程,在java工程中調(diào)用,運(yùn)行java工程即可
11
簡(jiǎn)述Android應(yīng)用程序結(jié)構(gòu)是哪些?
Android應(yīng)用程序結(jié)構(gòu)是:
Linux Kernel(Linux內(nèi)核)、Libraries(系統(tǒng)運(yùn)行庫(kù)或者是c/c++核心庫(kù))、Application
Framework(開發(fā)框架包)、Applications (核心應(yīng)用程序)
12
請(qǐng)繼承SQLiteOpenHelper實(shí)現(xiàn):
1)創(chuàng)建一個(gè)版本為1的“diaryOpenHelper.db”的數(shù)據(jù)庫(kù),
2)同時(shí)創(chuàng)建一個(gè) “diary” 表(包含一個(gè)_id主鍵并自增長(zhǎng),topic字符型100長(zhǎng)度, content字符型1000長(zhǎng)度)
3)在數(shù)據(jù)庫(kù)版本變化時(shí)請(qǐng)刪除diary表,并重新創(chuàng)建出diary表。
publicclass DBHelper extends SQLiteOpenHelper{
public final static String DATABASENAME ="diaryOpenHelper.db";
public final static int DATABASEVERSION =1;
//創(chuàng)建數(shù)據(jù)庫(kù)
public DBHelper(Context context,Stringname,CursorFactory factory,int version)
{
super(context, name, factory,version);
}
//創(chuàng)建表等機(jī)構(gòu)性文件
public void onCreate(SQLiteDatabase db)
{
String sql ="create tablediary"+
"("+
"_idinteger primary key autoincrement,"+
"topicvarchar(100),"+
"contentvarchar(1000)"+
")";
db.execSQL(sql);
}
//若數(shù)據(jù)庫(kù)版本有更新,則調(diào)用此方法
public void onUpgrade(SQLiteDatabasedb,int oldVersion,int newVersion)
{
String sql = "drop table ifexists diary";
db.execSQL(sql);
this.onCreate(db);
}
}
12道Android面試題結(jié)束啦,
【Android開發(fā)工程師經(jīng)典面試題】相關(guān)文章:
Android開發(fā)工程師面試題02-05
Android工程師面試題匯總02-11
百度Android開發(fā)工程師面試題(完整版)02-07
百度android開發(fā)面試題05-20
Android開發(fā)工程師面試試題11-20
Android開發(fā)工程師優(yōu)秀簡(jiǎn)歷模板10-17
android面試題02-19