Time of Update: 2013-12-10
json資料格式解析我自己分為兩種;一種是普通的,一種是帶有數組形式的; 普通形式的:伺服器端返回的json資料格式如下:{"userbean":{"Uid":"100196","Showname":"\u75af\u72c2\u7684\u7334\u5b50","Avtar":null,"State":1}}分析代碼如下:// TODO
Time of Update: 2013-12-10
做移動互連網就不太可能不碰手機端的開發。上周為了項目需要,俺也挽袖子掄胳膊開始寫起了android程式,還好有java基礎,倒也上手快,寫了幾個小程式,主要都是關於定位方面的。網上也搜得到一些相關的文章和教程,但給出的例子效果不太好,而且感覺只有其表,卻不明其理。因此寫出此文,分享一些我的經驗。雖然是以android為主,但是我想對其它平台的開發也應該有些協助。這篇文章側重於制定一個合理的定位方案。手機定位的方式先科普一些基礎知識吧。最簡單的手機定位方式當然是通過GPS模組(現在大部分的智能機應
Time of Update: 2013-12-10
LinearLayout和RelativeLayout共有屬性:java代碼中通過btn1關聯次控制項android:id="@+id/btn1"控制項寬度android:layout_width="80px" //"80dip"或"80dp"android:layout_width =“wrap_content”android:layout_width =
Time of Update: 2013-12-10
定義activity運行所在的進程名稱。一般情況下,應用的所有組件都運行在為應用建立的預設的進程中,該預設進程的名稱應用程式套件名稱一致。通過定義<application>元素的“process”屬性可以為所有組件指定一個不同的預設進程。但是任意組件都可以重寫預設進程,以便實現多進程操作。如果該屬性指定名稱以“:”開頭,則一個新的專屬於該應用的進程將會被建立。如果該進程名以小寫字母開頭,則為該activity提供許可權以讓其在一個全域的
Time of Update: 2013-12-10
–Bitmap代表這一張位元影像,BitmapDrawable裡封裝的圖片就是一個Bitmap對象。如果要將Bitmap對象封裝成BitmapDrawable對象只需要用構造方法即可。//講bitmap對象封裝成BitmapDrawable對象BitmapDrawable drawable = new BitmapDrawable(bitmap);//將BitmapDrawable對象轉換為bitmapBitmap bitmap =
Time of Update: 2013-12-10
使用SharedPreference時,資料的儲存必須使用commit()方法,否則資料不會儲存;資料會儲存在DDMS的包目錄下的shared_prefs下:Activity代碼 public class ContentProviderActivity extends Activity { /** Called when the activity is first created. */ private static final String FILENAME =
Time of Update: 2013-12-10
SurfaceView與普通View還有一個重要區別:View的繪圖必須在UI線程中進行,但SurfaceView不存在這個問題,因為它是由SurfaceHolder來完成的。所以對於View組件,如果繪圖時間過長,會阻塞UI主線程,而SurfaceHolder則會啟動新的線程去更新SurfaceView的繪製,不會阻塞UI線程。下面的程式是通過SurfaceView繪製正玄曲線和餘玄曲線的樣本,代碼如下:Activity: package
Time of Update: 2013-12-10
動畫類型Android的animation由四種類型組成XML中alpha 漸層透明度動畫效果scale 漸層尺寸伸縮動畫效果translate 畫面轉換位置移動動畫效果rotate 畫面轉移旋轉動畫效果JavaCode中AlphaAnimation 漸層透明度動畫效果ScaleAnimation 漸層尺寸伸縮動畫效果TranslateAnimation 畫面轉換位置移動動畫效果RotateAnimation
Time of Update: 2013-12-10
1.使G-sensor正常工作需要做的事:G-sensor driver檔案包括:driver/i2c/chips/lis331dl.cdriver/i2c/chips/sensorioctl.hinclude/linux/lis331dl.h並在/kernel/arch/arm/mach-s3c6410/mach-ur6410.c檔案中i2c chanel1的結構變數i2c_devs1[]
Time of Update: 2013-12-10
Activity中有一個名稱叫onCreate的方法。該方法是在Activity建立時被系統調用,是一個Activity生命週期的開始。可是有一點容易被忽視,就是onCreate方法的參數saveInsanceState。一般的程式開發中,很少用到這個參數。 onCreate方法的完整定義如下: public void
Time of Update: 2013-12-10
首先,我就是用很容易理解的方法去實現這個功能。在伺服器端,做一個index.php檔案,用來讀取MySQL資料庫的資訊:index.php:<?php$link = mysql_connect("localhost", "root", "123456"); mysql_query("SET NAMES
Time of Update: 2013-12-10
在看Oplayer的時候看見滑動字母來實現listView的內容搜尋,所以就把裡面的核心的函數扣除來做了一個demo,分為兩部分一個是布局,另一個就是代碼了,具體的如下: 布局: [html] <?xml version="1.0" encoding="utf-8"?> <LinearLayout
Time of Update: 2013-12-10
android2.3提供的json解析類 android的json解析部分都在包org.json下,主要有以下幾個類: JSONObject:可以看作是一個json對象,這是系統中有關JSON定義的基本單元,其包含一對兒(Key/Value)數值。它對外部(External: 應用toString()方法輸出的數值)調用的響應體現為一個標準的字串(例如:{"JSON": "Hello, World"
Time of Update: 2013-12-10
上文已介紹,水平感應器傳回來的第一個參數值就是代表手機繞Z軸轉過的角度,也就是手機頂部與正北的夾角。在程式中通過檢查該夾角就可以實現指南針應用。其實思路很簡單,先準備一張圖片,該圖片方向指標指向正北。然後開發一個檢測方向的感應器,當程式檢測到手機頂部繞Z軸轉過多少角度,就讓指南針圖片反向轉過多少度,這樣就實現了指標始終指向正北方。這也是指南針的原理。代碼如下:Activity: package com.home.compass; import android.app.
Time of Update: 2013-12-10
package cn.test;import android.os.Bundle;import android.app.Activity;/** * Demo描述: * 在資源檔Strings.xml中的某個string裡使用預留位置 * 然後在代碼中將其替換 */public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) {
Time of Update: 2013-12-10
Android從3.0(API Level 11)開始,在繪製View的時候支援硬體加速,充分利用GPU的特性,使得繪製更加平滑,但是會多消耗一些記憶體。 開啟或關閉硬體加速: 由於硬體加速自身並非完美無缺,所以Android提供選項來開啟或者關閉硬體加速,預設是關閉。可以在4個層級上開啟或者關閉硬體加速:
Time of Update: 2013-12-10
1、關機充電其實是進入adb shell很快的方式! 2、手機關機時候插入USB,手機將進入關機充電模式,那麼這個模式究竟是怎麼進行的,這裡分析如下! (1)uboot:這裡代碼大概瀏覽了一下:u-boot\arch\arm\lib\board.c下的函數board_init_r中倒數最後幾行:do_cboot(NULL, 0, 1,
Time of Update: 2013-12-10
不管你多麼仔細,程式總是會出錯,下面方法是個全域的異常捕獲方法!希望對大家有協助!1.用的時候,需要在applicaion裡面調用,代碼如下:CrashHandler crashHandler = CrashHandler.getInstance(); crashHandler.init(this);2. 下面是主要的功能類:package
Time of Update: 2013-12-10
我是直接在Ubuntu 12.10 64位系統下操作的,搭建Ubuntu開發環境類似,見Ubuntu 10.04開發環境配置。需要注意的是,64位的系統,需要安裝支援32位的庫(sudo apt-get install ia32-libs),不然編譯時間提示找不到交叉編譯鏈。1.安裝javauestc@uestc-ThinkPad-T43:~/tools$ lsjdk1.6.0_24 jdk-6u24-linux-i586.binuestc@uestc-ThinkPad-T43:~/
Time of Update: 2013-12-10
package cn.com.remoteServiceClient;import com.cn.aidl.IRemoteQuery;import android.app.Activity;import android.content.ComponentName;import android.content.Intent;import android.content.ServiceConnection;import android.os.Bundle;import