萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 安卓開發 >> Android基礎知識相關介紹

Android基礎知識相關介紹

這是我們為大家提供的一篇介紹Android基礎知識的文章,接下來就讓我們一起來了解一下吧!

一、eclipse我常用的快捷鍵

1.、ctrl+shift+r:打開資源

2、ctrl_shift+/ 注釋

3. ctrl+o:快速outline,神器啊

4. ctrl+e:快速轉換編輯器,神器啊

5. alt+shift+r:重命名

7. shift+enter及ctrl+shift+enter

8. Alt+方向鍵

9. ctrl+m 最大\小化編輯器

10. ctrl+.:下一個錯誤及快速修改

Ctrl+Shift+X 把當前選中的文本全部變味小寫

Ctrl+Shift+Y 把當前選中的文本全部變為小寫

Ctrl+Shift+F 格式化當前代碼

eclipse 斷點調試快捷鍵

F3        --跳到聲明或定義的地方。

F5       --單步調試進入函數內部。

F6       --單步調試不進入函數內部,如果裝了金山詞霸2006則要把“取詞開關”的快捷鍵改成其他的。

F7       --由函數內部返回到調用處。

F8       --一直執行到下一個斷點。

二、安裝sdk錯誤

SDK Manager:failed to install Warning! A folder failed to be renamed or moved.On Windows this typically means that a propram is using that folder>>>D:\android\android-sdk-windows\tools.When ready,press YES to try again.

解決辦法:

1.進入sdk的temp文件夾,下載好後會有一個tools_r06-windows.zip(版本號可能會不一樣)

2.解壓此文件,如解壓成tools_r06-windows

3.進入tools_r06-windows文件夾,將tools_r06-windows裡的文件復制

4.覆蓋sdk根目錄的tools文件夾中的文件

三、sqllite操作

運行起模擬器

adb shell 進入linux命令行

ls -l查看目錄

cd進入目錄

sqlite3 test.db操作test.db

插入數據:

SQLiteDatabase db = openOrCreateDatabase("test",

Context.MODE_PRIVATE, null);

String sql = "insert into role(id,name) values(?,?)";

String[] values=new String[]{"11","系統管理員"};

db.execSQL(sql, values);

四、DDMS介紹

DDMS 的全稱是Dalvik Debug Monitor Service,為測試設備截屏,針對特定的進程查看正在運行的線程以及堆信息、Logcat、廣播狀態信息、模擬電話呼叫、接收SMS、虛擬地理坐標等等

FileExolorer文件浏覽

EmulatorControl模擬向模擬器發送短信,聲音。等

五、android.os.NetworkOnMainThreadException

android4.0後不能再主線程上執行下載需要使用異步

需要新建一個線程執行Runnable中的操作,然後把結果發送給Handler

1、新線程

new Thread(runnable).start();

2、執行下載操作

Runnable runnable = new Runnable() {

@Override

public void run() {

//執行下載操作

Message msg = new Message();

//發送結果

handler.sendMessage(msg);

}

};

private Handler handler = new Handler() {

@Override

// 當有消息發送出來的時候就執行Handler的這個方法

public void handleMessage(Message msg) {

try {

//處理結果

} catch (Exception e) {

Log.e(e.getMessage(), e.toString());

}

}

};

2、當然要是真不想使用異步也可以直接下載的,需要設置下,怎麼設置大家找下度娘。

六、 java.net.SocketException: Permission denied (maybe missing INTERNET permission)

在android中想操作文件,上個網,查看通訊錄。啥的都需要開通相應的權限

需要把對應授權加到AndroidManifest.xml中

列幾個,這塊可以在android開發文檔中查找其他的

android.permission.ACCESS_CHECKIN_PROPERTIES 允許讀寫訪問”properties”表在checkin數據庫中,改值可以修改上傳( Allows read/write access to the “properties” table in the checkin database, to change values that get uploaded)

android.permission.ACCESS_COARSE_LOCATION 允許一個程序訪問CellID或WiFi熱點來獲取粗略的位置(Allows an application to access coarse (e.g., Cell-ID, WiFi) location)

android.permission.ACCESS_FINE_LOCATION 允許一個程序訪問精良位置(如GPS) (Allows an application to access fine (e.g., GPS) location)

android.permission.ACCESS_LOCATION_EXTRA_COMMANDS 允許應用程序訪問額外的位置提供命令(Allows an application to access extra location provider commands)

android.permission.ACCESS_MOCK_LOCATION 允許程序創建模擬位置提供用於測試(Allows an application to create mock location providers for testing)

android.permission.ACCESS_NETWORK_STATE 允許程序訪問有關GSM網絡信息(Allows applications to access information about networks)

android.permission.ACCESS_SURFACE_FLINGER 允許程序使用SurfaceFlinger底層特性(Allows an application to use SurfaceFlinger’s low level features)

android.permission.ACCESS_WIFI_STATE 允許程序訪問Wi-Fi網絡狀態信息(Allows applications to access information about Wi-Fi networks)

android.permission.ADD_SYSTEM_SERVICE 允許程序發布系統級服務(Allows an application to publish system-level services).

七、模擬器10.0.2.2 代表127.0.0.1

經常在模擬器中測試下載文件啥的,用127.0.0.1不行啦

八、http操作

沒有使用過java的人可以看下,我也是在網上找來的

package com.example.tools;

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.net.HttpURLConnection;

import java.net.URL;

public class HttpDownLoad {

public String Download(String url) {

StringBuilder sb = new StringBuilder();

BufferedReader br = null;

String s;

try {

URL r = new URL(url);

HttpURLConnection con = (HttpURLConnection) r.openConnection();

br = new BufferedReader(new InputStreamReader(con.getInputStream()));

while ((s = br.readLine()) != null) {

sb.append(s);

}

} catch (Exception ex) {

ex.printStackTrace();

} finally {

try {

br.close();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

return sb.toString();

}

public InputStream GetInputStream(String url) {

try {

URL r = new URL(url);

HttpURLConnection con = (HttpURLConnection) r.openConnection();

InputStream input = con.getInputStream();

return input;

} catch (Exception ex) {

ex.printStackTrace();

return null;

}

}

}

九、操作XML之SAX

今天只跟大家分享下SAX這個輕量級的操作XML方法,他不像DOM那種把文件都加載到內存後再操作XML,我比較喜歡的

package cn.itcast.service;

import java.io.InputStream;

import java.util.ArrayList;

import java.util.List;

import javax.xml.parsers.SAXParser;

import javax.xml.parsers.SAXParserFactory;

import org.xml.sax.Attributes;

import org.xml.sax.SAXException;

import org.xml.sax.helpers.DefaultHandler;

import cn.itcast.model.Person;

public class SAXPersonService {

public List getPersons(InputStream inStream) throws Throwable

{

SAXParserFactory factory = SAXParserFactory.newInstance();//工廠模式還是單例模式?

SAXParser parser =factory.newSAXParser();

PersonParse personParser =new PersonParse();

parser.parse(inStream, personParser);

inStream.close();

return personParser.getPerson();

}

private final class PersonParse extends DefaultHandler

{

private List list = null;

Person person =null;

private String tag=null;

public List getPerson() {

return list;

<
copyright © 萬盛學電腦網 all rights reserved