導航:首頁 > 編程語言 > android筆試編程題

android筆試編程題

發布時間:2022-05-03 11:29:34

Ⅰ 今天android面試遇到這樣一個問答題 求解 一個apk文件有哪幾部分 各個部分的作用是什麼

APK
是Android Package的縮寫,即Android application package文件或Android安裝包。每個要安裝到Android平台的應用都要被編譯打包為一個單獨的文件,擴展名為 .apk。
APK
文件是用專業軟體eclipse編譯生成的文件包,其中包含了應用的二進制代碼、資源、配置文件等。通過將APK文件直接傳到Android手機中執行即可安裝。APK文件其實就是zip格式,其擴展名被改為apk,在Windows下用解壓軟體WinRAR/WinZIP/7-Zip可以直接打開。解壓後,你會看到有幾個文件和文件夾。一個典型的APK文件通常有下列內容組成:
AndroidManifest.xml 程序全局配置文件
classes.dex Dalvik位元組碼
resources.arsc 編譯後的二進制資源文件
META-INF\ 該目錄下存放的是簽名信息
res\ 該目錄存放資源文件
assets\ 該目錄可以存放一些配置文件

下面對這些文件和目錄做些基本的注釋和介紹:
• AndroidManifest.xml
該文件是每個apk應用程序都必須包含的文件,它描述了應用程序的名字、版本、許可權、引用的庫文件等等信息。

• classes.dex文件
classes.dex是java源碼編譯後生成的java位元組碼文件。dex是Dalvik VM executes的全稱即
Android Dalvik執行程序。利用解析工具可以將其轉換成java來加以閱讀和理解。

• resources.arsc
編譯後的二進制資源文件。在做主題美化時要常與這個文件打交
道。

• META-INF目錄
META-INF目錄下存放的是簽名信息,有三個簽名文件,用來保證apk包的完整性和系統的全。在eclipse編譯生成一個apk包時,會對所要打包的文件做一個校驗計算,並把計算結果放在META-INF目錄下。這就保證了apk包里的文件不能被隨意替換。比如拿到一個apk包後,如果想要替換裡面的一幅圖片,一段代碼,或一段版權信息,想直接解壓縮、替換再重新打包,基本是不可能的。如此一來就給感染和惡意修改增加了難度,有助於保護系統的安全。

•res目錄
res目錄存放資源文件。包括圖片,字元串等等。
res下有若干個子目錄,主要為drawable,layout,xml。
• assets目錄
assets目錄可以存放一些配置文件,這些文件的內容在程序運行過程中可以通過相關的API獲得。

Ⅱ Android一小面試題求解

4.onStop() 只是使activity處於停止狀態,比如從activityA 跳到activityB,這時候A處於 onStop()

  1. 正常的結束activity的方法

  2. 特殊情況時退出方法,可使用重寫application的方式屏蔽掉錯誤提示對話框,實現退出效果

  3. java的結束進程的方法,也可以用來結束當前activity

Ⅲ Android的考試題,在線等挺急

1.A 2.A 3.A 4.A 5.D 6.A 7.C 8.B 9.C 10.D
1.T 2.F 3.T 4.F 5.T 6.F 7.F 8.T 9.T 10.T

Ⅳ android編程題,圖中有一個按紐,功能是點擊按鈕後,通過Toast顯示自己的名字。試編程實現該功能。

//復制到onCreate下面,這個是沒有寫布局xml的,如果需要可以自己寫布局然後button用find去獲取,當前這個是整個avtivity就是一個button
Buttonb=newButton(this);
b.setText("name");
b.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
Toast.makeText(MainActivity.this,"XXX",Toast.LENGTH_LONG).show();
}
});
setContentView(b);

Ⅳ android的一道筆試題,activity對一些資源以及狀態的操作保存,最好是保存在生命周期的哪個函數中進行

我也覺得樓主是對的,因為從star->creat->resume,然後再是用戶在頁面的操作,若要保存用戶操作後的數據的話,就得等用戶打開其他activity時,再來保存之前activity里的東西,so,選A。

Ⅵ android的一道筆試題,activity對一些資源以及狀態的操作保存,最好是保存在生命周期的哪

摘要 onPause:

Ⅶ android 面試,演算法題。

final int size = data.length;
for(int i = 0; i< size; i++){
if(data[i] == 0xffffffff)
data[i] = 0x80ffffff;
}

不知道你是不是這個意思。

Ⅷ android資料庫編程(有關於選擇題編寫)

你以前是不是問過這個問題?怎麼感覺這么熟悉呢。。。至於存儲的話,你可以用exl或者乾脆txt文檔讀取的模式存入資料庫,也就是所謂的數據批量導入,這個不難吧?

Ⅸ android 面試題

1、前言 
  6 月  26  日,  Google Android  發布了  NDK  ,引起了很多發人員的興趣。  NDK  全
稱:   Native  Development  Kit  。下載地址為: 
http://developer.android.com/sdk/ndk/1.5_r1/index.html  。 
2、誤解 
  新出生的事物,除了驚喜外,也會給我們帶來一定的迷惑、誤解。 
2.1、誤解一:  NDK  發布之前,  Android  不支持進行  C  開發 
  在 Google  中搜索  「NDK」  ,很多  「Android  終於可以使用  C++  開發  」  之類
的標題,這是一種對  Android  平台編程方式的誤解。其實,  Android  平台從誕生起,就已
經支持  C  、   C++  開發。眾所周知,   Android  的  SDK  基於  Java  實現, 這意味著基於  Android 
SDK  進行開發的第三方應用都必須使用  Java  語言。但這並不等同於 「  第三方應用只能使
用  Java」  。在  Android  SDK  首次發布時,  Google  就宣稱其虛擬機  Dalvik  支持  JNI  編程
方式,也就是第三方應用完全可以通過  JNI  調用自己的  C  動態庫,即在  Android  平台上,  
「Java+C」  的編程方式是一直都可以實現的。 
  當然這種誤解的產生是有根源的:在 Android SDK  文檔里,找不到任何  JNI  方面的
幫助。即使第三方應用開發者使用  JNI  完成了自己的  C  動態鏈接庫(  so  )開發,但是  so 
如何和應用程序一起打包成  apk  並發布?這裡面也存在技術障礙。我曾經花了不少時間,
安裝交叉編譯器創建  so  ,並通過  asset (資源)方式,實現捆綁  so  發布。但這種方式只
能屬於取巧的方式,並非官方支持。所以,在  NDK  出來之前,我們將  「Java+C」  的開發
模式稱之為灰色模式,即官方既不聲明 「  支持這種方式  」  ,也不聲明 「  不支持這種方
式  」  。 
2.2、誤解二:有了  NDK  ,我們可以使用純  C  開發  Android  應用 
  Android SDK 採用  Java  語言發布,把眾多的  C  開發人員排除在第三方應用開發外
(  注意:我們所有討論都是基於「  第三方應用開發  」  ,  Android  系統基於  Linux  ,系
統級別的開發肯定是支持  C  語言的。   )。 NDK  的發布,許多人會誤以為,類似於  Symbian  、 
WM  ,在  Android  平台上終於可以使用純  C  、  C++  開發第三方應用了!其實不然,  NDK 
文檔明確說明:  it is not a good way  。因為  NDK  並沒有提供各種系統事件處理支持,也沒
有提供應用程序生命周期維護。此外,在本次發布的  NDK  中,應用程序  UI  方面的  API  也
沒有提供。至少目前來說,使用純  C  、  C++  開發一個完整應用的條件還不完備。 
 
3、NDK  是什麼 
 
對 NDK  進行了粗略的研究後,我對  「NDK  是什麼  」  的理解如下: 
 
1、NDK  是一系列工具的集合。 
 
NDK 提供了一系列的工具,幫助開發者快速開發  C  (或  C++  )的動態庫,並能自動
將  so  和  java  應用一起打包成  apk  。這些工具對開發者的幫助是巨大的。 
NDK 集成了交叉編譯器,並提供了相應的  mk  文件隔離  CPU  、平台、  ABI  等差異,
開發人員只需要簡單修改  mk  文件(指出 「  哪些文件需要編譯  」  、 「  編譯特性要求  」 
等),就可以創建出  so  。 
NDK 可以自動地將  so  和  Java  應用一起打包,極大地減輕了開發人員的打包工作。 
2、NDK  提供了一份穩定、功能有限的  API  頭文件聲明。
 
  oogle 明確聲明該  API  是穩定的,在後續所有版本中都穩定支持當前發布的  API  。
從該版本的  NDK  中看出,這些  API  支持的功能非常有限,包含有:  C  標准庫(  libc  )、
標准數學庫(  libm  )、壓縮庫(  libz  )、  Log  庫(  liblog  )。 
G
 
4、NDK  帶來什麼 
 
1、NDK  的發布,使  「Java+C」  的開發方式終於轉正,成為官方支持的開發方式。 
使用 NDK  ,我們可以將要求高性能的應用邏輯使用  C  開發,從而提高應用程序的執
行效率。 
使用 NDK  ,我們可以將需要保密的應用邏輯使用  C  開發。畢竟,  Java  包都是可以反
編譯的。 
NDK 促使專業  so  組件商的出現。(樂觀猜想,要視乎  Android  用戶的數量) 
2、NDK  將是  Android  平台支持  C  開發的開端。 
  NDK 提供了的開發工具集合,使開發人員可以便捷地開發、發布  C  組件。同時,  
Google 承諾在  NDK  後續版本中提高  「  可調式  」  能力,即提供遠程的  gdb  工具,使我
們可以便捷地調試  C  源碼。在支持  Android  平台  C  開發,我們能感覺到  Google  花費了
很大精力,我們有理由憧憬 「C  組件支持  」  只是  Google Android  平台上 C  開發的開端。
畢竟,   C  程序員仍然是碼農陣營中的絕對主力,將這部分人排除在  Android  應用開發之外,
顯然是不利於  Android  平台繁榮昌盛的。

閱讀全文

與android筆試編程題相關的資料

熱點內容
命令行沒有了怎麼回事 瀏覽:949
為什麼安卓軟體更新那麼快 瀏覽:838
學編程需要什麼數學基礎 瀏覽:229
沉浸式助眠asmr解壓 瀏覽:125
無證程序員是啥意思 瀏覽:231
成績中等的學生編程專業 瀏覽:132
基於滑動窗口計演算法 瀏覽:210
國家python發展 瀏覽:297
忘記加密密碼後該如何解開 瀏覽:712
python開發文件伺服器 瀏覽:349
重啟svn命令 瀏覽:598
python組合數據類型題庫解析 瀏覽:77
電腦解壓文件的安裝包 瀏覽:468
不培訓能幹程序員嗎 瀏覽:282
編譯器怎麼分享微信 瀏覽:798
四川加密防塵網廠 瀏覽:285
列印機怎麼連上伺服器 瀏覽:619
2k20解壓後不能進去 瀏覽:191
伺服器掉線後顯示什麼 瀏覽:207
python根據經緯度獲取國家 瀏覽:48