BlueAnt第一季度Android應用
『壹』 如何通過Tesseract開源OCR引擎創建Android OCR應用
要編譯Android平台的Tesseract,需要使用Google提供的tesseract-android-tools。
代碼獲取方式:
git clone https://code.。google.com/p/tesseract-android-tools/
打開README,在命令行工具中執行下面的步驟:
cd <project-directory>
curl -O https://tesseract-ocr。googlecode.。com/files/tesseract-ocr-3.02.02.tar.gz
curl -O http://leptonica。googlecode。com/files/leptonica-1.69.tar.gz
tar -zxvf tesseract-ocr-3.02.02.tar.gz
tar -zxvf leptonica-1.69.tar.gz
rm -f tesseract-ocr-3.02.02.tar.gz
rm -f leptonica-1.69.tar.gz
mv tesseract-3.02.02 jni/com_googlecode_tesseract_android/src
mv leptonica-1.69 jni/com_googlecode_leptonica_android/src
ndk-build -j8
android update project --target 1 --path .
ant debug (release)
注意:如果你在使用NDK r9,編譯的時候會出現錯誤:
format not a string literal and no format arguments [-Werror=format-security]
解決的方法就是在Application.mk中加入一行:
APP_CFLAGS += -Wno-error=format-security
編譯之後會生成class.jar和一些*.so。
Android OCR Application
創建一個Android應用,把生成的jar和so導入進來。
創建TessOCR:
public class TessOCR {
private TessBaseAPI mTess;
public TessOCR() {
// TODO Auto-generated constructor stub
mTess = new TessBaseAPI();
String datapath = Environment.getExternalStorageDirectory() + "/tesseract/";
String language = "eng";
File dir = new File(datapath + "tessdata/");
if (!dir.exists())
dir.mkdirs();
mTess.init(datapath, language);
}
public String getOCRResult(Bitmap bitmap) {
mTess.setImage(bitmap);
String result = mTess.getUTF8Text();
return result;
}
public void onDestroy() {
if (mTess != null)
mTess.end();
}
}
構造函數中需要在存儲卡上創建一個目錄tessdata,如果不創建程序運行就會出錯。因為源碼中會檢測這個目錄,不存在就拋出異常:
public boolean init(String datapath, String language) {
if (datapath == null) {
throw new IllegalArgumentException("Data path must not be null!");
}
if (!datapath.endsWith(File.separator)) {
datapath += File.separator;
}
File tessdata = new File(datapath + "tessdata");
if (!tessdata.exists() || !tessdata.isDirectory()) {
throw new IllegalArgumentException("Data path must contain subfolder tessdata!");
}
return nativeInit(datapath, language);
}
就這么簡單。現在通過三種方式獲取圖片做OCR:
在圖庫中選取一張圖,選擇發送或者分享,選擇OCR應用
在AndroidManifest.xml中加入IntentFilter,讓OCR應用出現在圖庫的分享列表中:
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
<data android:mimeType="image/*" />
</intent-filter>
獲得URI之後,對URI解碼,獲取bitmap:
if (Intent.ACTION_SEND.equals(intent.getAction())) {
Uri uri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM);
uriOCR(uri);
}
private void uriOCR(Uri uri) {
if (uri != null) {
InputStream is = null;
try {
is = getContentResolver().openInputStream(uri);
Bitmap bitmap = BitmapFactory.decodeStream(is);
mImage.setImageBitmap(bitmap);
doOCR(bitmap);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
if (is != null) {
try {
is.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
啟動OCR應用,從圖庫中選擇一張圖做OCR
發送Intent調用圖庫,在onActivityResult中獲取返回的URI做OCR:
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, REQUEST_PICK_PHOTO);
啟動OCR應用,拍照之後做OCR
為了獲取高質量的圖片,在Intent中加入圖片路徑。返回之後就可以直接使用這個圖片路徑解碼:
private void dispatchTakePictureIntent() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
// Ensure that there's a camera activity to handle the intent
if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
// Create the File where the photo should go
File photoFile = null;
try {
photoFile = createImageFile();
} catch (IOException ex) {
// Error occurred while creating the File
}
// Continue only if the File was successfully created
if (photoFile != null) {
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT,
Uri.fromFile(photoFile));
startActivityForResult(takePictureIntent, REQUEST_TAKE_PHOTO);
}
}
}
最後不要忘記下載語言包,並push到存儲卡的tessdata目錄下。
『貳』 android應用程序開發中run和debug 有什麼區別
能夠在eclipse上運行調試應用程序之前,你必須為它創建一個啟動項。啟動項指定哪個工程將被啟動,哪個activity開始工作,以及使用哪些模擬器選項等。
按照以下步驟為Eclipse版本的應用程序創建合適的啟動項:
打開啟動項管理工具。
在Eclipse 3.3 (Europa)的版本中,酌情選擇 Run > Open RunDialog... or Run > Open Debug Dialog... 。
在Eclipse3.4 (Ganymede)版本中,酌情選擇 Run > Run Configurations...or Run > Debug Configurations... 。
在左邊的工程類型列表選擇Android Application選擇,雙擊(或者點擊右鍵選擇new),創建一個新的啟動項。
輸入啟動項名稱。
在Android標簽中,瀏覽要開始的工程和Activity 。
在Target標簽中,設置想要顯示的屏幕及網路屬性,以及其他任何模擬器啟動選項。
你可以在Common標簽中設置更多的選項.
按下Apply保存啟動配置,或者按下Run或Debug()。
運行和調試應用程序
一旦你設定了工程和工程啟動配置,你就可以按照以下的說明運行和調試應用程序了。
從eclipse主菜單,根據情況選擇Run>Run 或者 Run>Debug,開始運行或者調試活動啟動項。
注意,這里活動啟動項是在運行配置管理中最最近一次選中的那個。它不一定就是在Eclipse Navigation 面板中選擇的程序(如果有的話)
設置和修改活動啟動項,可以使用啟動項管理工具。如何獲得啟動項管理工具可以參考創建一個啟動項
運行或調試應用程序將觸發以下動作:
啟動模擬器,如果他還沒有開始運行。
編譯工程, 如果在上次編譯的基礎上修改過代碼,將重新編譯。在模擬器上安裝應用程序。
Run選項,開始運行程序。
Debug 在"Wait for debugger "模式下啟動程序,然後打開調試窗口並將Eclipse java調試器和程序關聯。
利用其他IDEs和工具開發Android應用程序
通常我們使用安裝有ADT插件的eclipse Eclipse with the ADT plugin.來開發Android程序,這個插件將編輯,build和調試功能集成到IDE上。
然而,如果你想在其他的IDE上開發程序,例如IntelliJ,或者使用沒有ADT插件的eclipse也可以。SDK提供了安裝,編譯,調試應用程序所需要的工具。
創建一個android工程
Android SDK包含一個activityCreator的程序,它將為工程產生多個stub文件和一個build文件。你可以用這個程序創建一個新的 Android工程或者在現有代碼上創建工程,如SDK中包含的例子。對於linux 和Mac系統,SDK提供activityCreator.py,一個 Python腳本,Windows上則是activityCreator.bat一個批處理腳本。無論是哪種平台,用法是一樣的。
按以下步驟運行activityCreator創建Android工程:
在命令行下,切換到SDK下的tools/目錄下,為你的工程文件新建一個目錄。如果你是在現有代碼上創建工程,切換到程序的根目錄下。
運行activityCreator。在命令行下,你必須指定完全合格的類名作為參數。如果你是創建一個全新的工程,這個類代表的與它同名的stub類和腳本文件。如果是在現有代碼上創建工程,必須指定軟體包中其中一個Activity類的名稱。命令選項的腳本包括:
--out <folder> 設定輸出目錄。默認情況下輸出目錄為當前目錄。如果你想為工程文件創建一個新的目錄,可以使用這個選項來指向它。
--ide intellij, 在一個新的項目中生成IntelliJIDEA 工程文件。
這里有個例子:
~/android_linux_sdk/tools $ ./activityCreator.py --out myprojectyour.package.name.ActivityName
package: your.package.name
out_dir: myproject
activity_name: ActivityName
~/android_linux_sdk/tools $
activityCreator腳本生成以下文件和目錄(但是不能重寫已有文件):
AndroidManifest.xml 程序的清單文件,同時為工程指定Activity類。
build.xml 一個Ant文件,用來編譯/打包應用程序。
src/your/package/name/ActivityName.java 你指定的輸入Activity類。
your_activity.iml, your_activity.ipr, your_activity.iws [only with the-ide intelliJ flag] intelliJ工程文件
res/ 資源目錄.
src/ 源代碼目錄.
bin/ build腳本的輸出目錄.
現在你可以將開發文件夾移到任何地方,但是記住,必須使用tool/文件夾下的adb程序將文件發送到模擬器上。因此你需要在你工作環境和tools/文件夾之間活動。
當然你需要避免移動SDK目錄,因為它將打斷編譯腳本。(再重新build之前需要手動更新SDK的映射路徑)
編譯 android應用程序
使用activityCreator生成的Ant文件build.xml來編譯程序
如果你沒有,你可以通過Apache Ant home page得到Ant文件。安裝它,並確定它在你的可執行文件路徑下。
呼叫Ant之前,你需聲明JAVA_HOME環境變數,並將它設置為JDK的安裝路徑。
注 意:在windows上,JDK默認的安裝路徑為"ProgramFiles",這個路徑將會引起Ant失敗,因為路徑中間有空格。解決這個問題,你可以像這樣指定環境變數 JAVA_HOME:JAVA_HOME=c:\Prora~1\Java\ 然而簡單的解決方法是將JDK安裝在沒有空格的目錄下。例如:c:\java\jdk1.6.0_02.
如果你還沒有這么准備好,按照上面創建一個新的工程的介紹建立一個工程。
現在你可以為你的工程運行Ant編譯文件,只需在build.xml同文件夾下輸入ant即可。每次修改原文件或是資源,都需要重新運行ant,它將把最新版的應用程序打包以便deploy.
運行Android程序
運行一個編譯好的程序,你需要用adb工具將.apk文件載入到模擬器的/data/app/目錄下,用法如下面介紹。
啟動模擬器(命令行下運行sdk目錄下的/tools/emulator)。
模擬器切換到主畫面(最好不要在程序運行的時候向模擬器安裝程序,可以按home鍵離開應用程序)。
運 行adb,安裝myproject/bin./<appname>.apk文件。例如,安裝Lunar Lander 示例,命令行下,切換到SDK目錄下的/sample/LunarLander子目錄下,輸入../../tools/adbinstall bin/LunarLander.apk
在模擬器中,打開可執行程序列表,卷動屏幕,選中並啟動你的應用程序。
注意:當你第一次安裝一個Activity時,你可能需要在啟動項顯示之前,或者其它程序調用它之前重新啟動模擬器。因為軟體包管理工具通常只有在模擬器啟動時才能完全的審查manifests。
為程序附加調試器
這一節我們介紹如何在屏幕上顯示調試信息(例如CPU使用率),以及如何將IDE和模擬器上運行的程序關聯起來。
使用eclipse插件可以自動的生成調試器。但你也可以通過配置IDES來監聽調試埠得到調試信息。
啟動Dalvik Debug Monitor Server (DDMS) 工具 ,它在IDE和模擬器之間扮演著埠轉換服務的角色。?
設置模擬器調試配置選項。例如,等到調試信息被載入後才啟動應用程序。注意,很多調試選項無需DDMS也可以使用,例如模擬器上顯示CPU的使用效率,或者屏幕的刷新頻率。
配置IDE,使得調試時IDE與8700埠關聯 .how to set up Eclipse to debug your project. 包含以下信息。
配置IDE附加調試埠
DDMS將為每一個虛擬機分配一個特殊的調試埠,這個埠在模擬器上可以找到。你必須將你的IDE與此埠(虛擬機上信息欄中有列出這些埠)關聯或者是默認的埠8700。這樣可以使IDE 連接到模擬器上程序列表中的任一個程序。
你的IDE需要能夠關聯模擬器上正在運行的程序,顯示它的線程,並允許你掛起它,檢查它的狀態,設置斷點。如果你在開發設置面板選擇了「等待調試」,應用程序將等到Eclipse連接後才運行,所以你需要在連接之前設置斷點。
修改正在調試的程序,或者在當前程序運行時選擇「等待調試」將引起系統殺死這個應用程序。如果你的程序處於一種壞的狀態,你可以使用方式殺死它,方法很簡單,只需要設置和鉤掉復選框。
『叄』 安卓4.3的推送裡面說支持ANT+。這個是什麼意思是指S3的硬體就可以支持ANT+還是針對S4說
安卓4.3的推送裡面說支持ANT+,ANT+的意思是心率表的傳輸協議,手機支持這個協議就可以將心率帶的數據傳輸到手機的運動軟體中,進行綜合分析了。
S3的硬體就可以支持ANT+是說S4說在S3優化的更好而來的,數據也會更加准確。
『肆』 如何對Android的APP進行簽名
1、在Android Studio中打開工程,點擊「Build」菜單下的「Generate Signed APK」。
『伍』 android中怎樣將自己的應用程序的簽名改為系統簽名一樣
不管是模擬器還是真實手機。因此,在設備或者是模擬器上運行調試程序之前,必須為應用程序設置數字簽名。 所有的程序都必須簽名,沒有被簽名的程序,系統將不能安裝。 可使用自簽署證書簽署應用程序,無須授權憑證。系統僅僅會在安裝的時候測試簽名證書的有效期,如果應用程序的簽名是在安裝之後才到期,那麼應用程序仍然可以正常啟用。可以使用標准工具-Keytool and Jarsigner-生成密鑰,來簽名應用程序的.apk文件。 Android SDK 工具可以在調試時給應用程序簽名。ADT插件和Ant編譯工具都提供了兩種簽名模式-debug模式和release模式 debug模式下,編譯工具使用JDK中的通用程序Keytool通過已知方法和密碼創建秘鎖和密鑰。每次編譯的時候,工具使用debug密鑰簽名應用程序的.apk文件。因為密碼是已知的,工具 不需要在每次編譯的時候提示輸入密鎖和密鑰。 當應用程序調試完畢准備要發布release版本時,可以在release模式下編譯。release模式下,編譯工具不會將.apk文件簽名。需要自己用Keytool生成密鑰和密鎖,再用JDK中的Jarsigner工具給.apk文件簽名。簽名基本設置 首先設置JAVA_HOME環境變數,告訴SDK如何找到Keytool,或者可以在Windows 系統環境變數PATH變數中添加Keytool的JDK路徑。 在發布release版本時,從Package面版上按選中你的project,按滑鼠右鍵,依次選擇Android Tools、Export Application Package。或者可以點擊Manifest Editor,overview 頁面上的「Exporting the unsigned .apk」連接 ,導出未簽名apk文件。保存.apk文件後,用Jarsigner及自己的密鑰給apk文件簽名,如果沒有密鑰, 可以用Keystore創建密鑰和密鎖。如果已經有一個密鑰了,如公共密鑰,就可以給.apk文件簽名了。 也可以把上面這個完整的步驟寫成一個bat文件,這樣需要簽名的時候只要運行這個bat就可以了。下面給出一個完整的bat文件示例: @Rem android簽名程序 //注釋指令 @Rem echo是顯示指令 格式:echo [{onoff}] [message] @echo ********************************************************** @Rem 文件是否存在命令格式:if exist 路徑+文件名 命令 @if exist d:sign/MyFirstApp.keystore goto sign @echo 創建簽名文件MyFirstApp.keystore @Rem keytool命令格式:-genkey產生簽名 -alias別名 -keyalg加密演算法 -validity有效天數 -keystore生產簽名文件名稱keytool -genkey -alias MyFirstApp.keystore -keyalg RSA -validity 40000 -keystore MyFirstApp.keystore @echo 開始簽名: @Rem jarsigner命令格式:-verbose輸出詳細信息 -keystore密鑰庫位置 -signedjar要生成的文件 要簽名的文件 密鑰庫文件 jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore @goto over :sign @echo 開始簽名:jarsigner -verbose -keystore MyFirstApp.keystore -signedjar MyFirstApp_signed.apk MyFirstApp.apk MyFirstApp.keystore :over @echo ********************MyFirstApp.apk 簽名完成*********************** pause 以上是一個給應用簽名的完整bat文件,在運行這個bat文件時,還需要按照屏幕提示的步驟輸入一些必要信息,最後生成一個簽名後的文件是:MyFirstApp_signed.apk。
『陸』 載入的安卓sdk 總是提示 com.android.ant.SetupTask cannot be found該怎麼辦
別這么麻煩了,給你一個adt版本的Eclipse吧
windows64位的高版本ADT,自帶v4 v7包
什麼ADT SDK都集成了,超好用
『柒』 如何使用android自帶的ant
Ant是android的編譯打包工具,一個很好的跨平台構建工具,特別是對於Java項目,這里使用它對Android工程進行自動化構建可以得到非常大的便利。一般來說對Android工程進行構。
使用Ant搭建Android開發環境,建立android項目
配置Ant環境在windows上應該選擇zip壓縮包,將zip壓縮包解壓到一個目錄。
打開系統環境變數,在系統變數欄點擊新建,變數名輸入「ANT_HOME」,變數值為Ant的根目錄,如「D:\Android\apache-ant-1.9.0」,注意不要帶雙引號。
在系統變數中找到Path變數,點擊編輯,在變數值的最後添加「%ANT_HOME%\bin」,注意不要帶雙引號,並且要使用「;」和之前的變數值隔開。
打開一個cmd窗口,輸入「ant」,如果顯示一下信息,說明Ant的環境配置成功,如果顯示:'ant'
不是內部或外部命令,也不是可運行的程序或批處理文件。則要檢查一下路徑是否有問題。
在Eclipse中配置Ant
在eclipse中使用Ant之前,為了使Ant的build.xml文件能夠安裝制定的格式進行縮進和高亮顯示,並能夠進行代碼提示,首先要簡單的設置一下。
打開Windows - Preferences,依次展開General,Editors,選中File Associations,點擊Add...,在Add
File Type對話框中輸入build.xml,點擊Ok。
接下來在File type:欄選中build.xml,在Associated Editor:欄選中Ant
Editor,點擊Default,build.xml的圖標變成了一個小螞蟻,配置完畢。
使用Ant編譯Android的java代碼和native代碼
新建一個Android工程TestAnt,在工程的根目錄下新建一個build.xml文件
輸入以下內容:
<?xml version="1.0" encoding="UTF-8"?><project name="TestAnt" default="init"> <target name="init"> <fail message="Ant 1.7.0 or higher is required."> <condition> <not> <antversion property="ant.version" atleast="1.7.0" /> </not> </condition> </fail> </target> </project>
打開cmd,切換到工程根目錄,輸入ant init
編譯成功,來解析這個build.xml:
<project name="TestAnt" default="init">
project是Ant工程的根節點,name屬性是工程的名稱,default是默認執行的target,init為默認的target,當我們輸入Ant的時候和Ant
init是一樣的效果。
<target name="init"> <fail message="Ant 1.7.0 or higher is required."> <condition> <not> <antversion property="ant.version" atleast="1.7.0" /> </not> </condition> </fail> </target>
target指定了要執行的操作,init是我們為這個target所起的名字,也可以是build,clean等等。在這個target中,執行的是檢查Ant的版本,如個小於1.7.0的話會輸出報錯信息。
例如我們可以添加一個clean的target
<target name="clean"> <echo message="Deleting temporary files..." /> <delete dir="gen" /> <delete dir="bin" /> <delete dir="out" /> <delete dir="obj" /> <echo message="DONE (Deleting temporary files)" /> </target>
執行的操作是刪除所有臨時目錄,在cmd窗口中輸入Ant clean,這四個臨時目錄就會被刪除,和在eclipse中執行清理是一個效果。
使用Ant編譯Android工程
在SDK中,Google已經為我們寫好了一個build.xml文件,就是sdk根目錄\tools\ant\build.xml,所以我們只要把這個build.xml引入就可以編譯Android工程了。
在這之前首先要新建一個local.properties文件,引入sdk和ndk的路徑
輸入一下內容:
sdk.dir=D:\\Android\\android-sdk
ndk.dir=D:\\Android\\android-ndk
分別為sdk和ndk的路徑,要安裝自己的實際路徑進行配置。
在測試工程的build.xml中輸入一下代碼:
<?xml version="1.0" encoding="UTF-8"?><project name="TestAnt" default="release"> <loadproperties srcFile="local.properties" /> <loadproperties srcFile="project.properties" /> <fail message="sdk.dir is missing. Make sure to generate local.properties using 'android update project'" unless="sdk.dir" /> <fail message="ndk.dir is missing. Make sure to generate local.properties using 'android update project'" unless="ndk.dir" /> <import file="${sdk.dir}/tools/ant/build.xml" /></project>
在命令行中執行ant release或ant debug,就會執行對應的編譯。
以上只是進行Java代碼的編譯,如何編譯native代碼呢,在NDK中Google可沒有提夠build.xml,這就需要我們自己實現。在新版NDK中,我們只要在命令行中切換到工程的根目錄,然後執行
「D:\Android\android-ndk\ndk-build.cmd」(紅色部分要替換成自己的路徑)
就可以,例如,在TestAnt工程中添加native代碼
執行ndk-build
所以我們只要在Ant中執行一個cmd命令就可以了,在build.xml中添加
<target name="native"> <echo message="Building native libraries..." /> <exec executable="${ndk.dir}/ndk-build.cmd" failonerror="true" /> <echo message="DONE (Building native libraries)" /> </target>
然後在命令行中執行ant native
執行了ndk-build。
以上介紹的都是使用Ant進行進步的Android編譯操作,在此基礎上可以實現更復雜的操作,比如批量替換資源文件,批量打包等等。
『捌』 ant motion 可以做在android上面嗎
你要在Ant里運行ProGuard,只需要添加一一個如下的target即可: 你只需要制定lib.dir和src.dir屬性就行了 查看原帖>>
『玖』 怎樣讓android應用啟動gif動起來
1-把GifView.jar加入你的項目。
2-在xml中配置GifView的基本屬性,GifView繼承自View類,和Button、ImageView一樣是一個UI控制項。如:
view plain to clipboardprint <com.ant.liao.GifView android:id="@+id/gif2"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:paddingTop="4px" android:paddingLeft="14px" android:enabled="false" /$amp;>amp;$nbsp;
<com.ant.liao.GifView android:id="@+id/gif2"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:paddingTop="4px" android:paddingLeft="14px" android:enabled="false" />
3-在代碼中配置常用屬性:
view plain to clipboardprint // 從xml中得到GifView的句柄
gf1 = (GifView) findViewById(R.id.gif1);
// 設置Gif圖片源
gf1.setGifImage(R.drawable.gif1);
// 添加監聽器
gf1.setOnClickListener(this);
// 設置顯示的大小,拉伸或者壓縮
gf1.setShowDimension(300, 300);
// 設置載入方式:先載入後顯示、邊載入邊顯示、只顯示第一幀再顯示
gf1.setGifImageType(GifImageType.COVER);
// 從xml中得到GifView的句柄
gf1 = (GifView) findViewById(R.id.gif1);
// 設置Gif圖片源
gf1.setGifImage(R.drawable.gif1);
// 添加監聽器
gf1.setOnClickListener(this);
// 設置顯示的大小,拉伸或者壓縮
gf1.setShowDimension(300, 300);
// 設置載入方式:先載入後顯示、邊載入邊顯示、只顯示第一幀再顯示
gf1.setGifImageType(GifImageType.COVER);
GifView的Jar包共有四個類:
GifAction.java
觀察者類,監視GIF是否載入成功
GifFrame.java
裡面三個成員:當前圖片、延時、下張Frame的鏈接。
GifDecoder.java
解碼線程類
GifView.java
主類,包括常用方法,如GifView構造方法、設置圖片源、延遲、繪制等。
『拾』 androidwear開發商應用商店下載中文版
沒有這個字,只有ant這個字,意思是螞蟻。
螞蟻(ant)是一種昆蟲。屬節肢動物門,昆蟲綱,膜翅目,蟻科。螞蟻的種類繁多,世界上已知有11700多種,有21亞科283屬,中國內已確定的螞蟻種類有600多種。最近還發現了無性繁殖的螞蟻新物種。螞蟻的壽命很長,工蟻可生存幾星期至3-10年,蟻後則可存活十幾年或幾十年,甚至100多年。一個蟻巢在1個地方可生長1到10年。
螞蟻為典型的社會性群體。具有社會性的3大要素:同種個體間能相互合作照顧幼體;具明確的勞動分工;在蟻群內至少二個世代重疊(不排除個別情況),且子代能在一段時間內照顧上一代。
螞蟻絕對是建築專家,蟻穴內有許多分室,這些分室各有用處。其中蟻後的分室最大。在沙漠中有一種螞蟻,建的窩遠看就如一座城堡,有4.5米之高。那些窩廢棄之後,就會被一些動物拿來當自己的窩了。蟻穴的底部是給蟻後住的,蟻後的任務就是吃東西,交配,生孩子。蟻窩牢固、安全、舒服,道路四通八達。螞蟻窩外面還有一圈土,還有一些儲備食物的地方,裡面通風、涼快、冬暖夏涼,食物不易壞掉。
螞蟻也是動物世界赫赫有名的建築師。它們利用顎部在地面上挖洞,通過一粒一粒搬運沙土,建造它們的蟻穴。蟻穴的「房間」將一直保持建造之初的形態,除非土壤嚴重干化。螞蟻研究專家沃爾特·奇爾蓋爾對蟻穴進行建模。他將液態金屬、石臘或者正畸石膏灌入蟻穴,凝固定型之後挖出。他說: 「你可以得到一個深入地下的結構。」根據他的觀察,最靠近地表的區域蟻室最多,深度越深,蟻室越少,面積也越小。他說:「為了做到這一點,螞蟻必須了解它 們相對於地面的深度。」但它們如何「施工」仍舊是一個謎。據奇爾蓋爾推測,螞蟻可能通過感知土壤中的二氧化碳水平測量深度。
螞蟻群體,由蟻後、工蟻和雄蟻三種。
蟻後——有生殖能力的雌性,或稱母蟻,又稱蟻王,在群體中體型最大,特別是腹部大,生殖器官發達,觸角短,胸足小,有翅、脫翅或無翅。主要職責是產卵、繁殖後代和統管這個群體大家庭。
工蟻——又稱職蟻。無翅,是不發育的雌性,一般為群體中最小的個體,但數量最多。復眼小,單眼極微小或無。上顎、觸角和三對足都很發達,善於步行奔走。工蟻沒有生殖能力。工蟻的主要職責是建造和擴大巢穴、採集食物、飼喂幼蟲及蟻後等。為了冬眠,螞蟻們要在秋天吃大量的食物來儲存體內的脂肪,而在接下來的整個冬天它們是不進食的。正因為如此,蟻群中的工蟻們幾乎每天都在尋找食物,以保證蟻群中的每個成員都能吃到足夠的食物來抵禦冬季的寒冷。有些種類有生殖能力,如雙針棱胸切葉蟻,以及部分猛蟻。
雄蟻——或稱父蟻。有翅。頭圓小,上顎不發達,觸角細長。有發達的生殖器官和外生殖器,主要職能是與蟻後交配,俗稱「王子」或「蚊子」。完成交配後不久即死亡。
母音字母a在重讀閉音節中,發短母音/æ/的音,發音時,舌端靠近下齒,舌前部抬高,舌位低,是四個前母音中舌位最低的,但開口最大的一個,屬於短母音,但是,在實際發音中有相當的長度,牙床介於半開和開之間,不圓唇。這個音出現在字首、字中位置,如:
mat 墊子
map 地圖
bag 袋子,包
cat 貓
hat 寬邊的帽子
fan 風扇
bat 球拍,蝙蝠
apple 蘋果
希望我能幫助你解疑釋惑。