Time of Update: 2018-12-04
在Java程式中的字元,不管是中文的還是英文的,都是佔用二個位元組,這個結論我們大家都爛熟於心了,但是糾結是為什麼呢? 其實是因為 char 類型就好比雙位元組的不帶正負號的整數 。 UTF-16編碼與Unicode編碼是一樣的,只不過UTF-16在編碼時會在碼流前加上"FE FF"兩個位元組的內容, 表示字元是以UTF-16格式儲存的,在讀取時程式就會知道是UTF-16編碼的字元 。 中文字元轉UTF-16 : byte[]
Time of Update: 2018-12-04
Android media 掃描mp3檔案這個重任是cpp來完成的。但是tag解析工作是上層java完成的。 亂碼問題的根源是: java內部是使用16bit的unicode編碼(UTF-16)來表示字串的,無論中文英文都是2位元組; jni內部是使用UTF-8編碼來表示字串的,UTF-8是變長編碼的unicode,一般ascii字元是1位元組,中文是3位元組; c/c++使用的是未經處理資料,ascii就是一個位元組了,中文一般是GB2312編碼,用兩個位元組來表示一個漢字。 解決辦法是:
Time of Update: 2018-12-04
寫一個XML用於顯示ListView list1.xml <?xml version="1.0" encoding="utf-8"?><TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/checklv1" android:layout_width="fill_parent"
Time of Update: 2018-12-04
Android 擷取當前日期 時間很方便 直接調用Calendar類即可定義變數private int mHour; private int mMinute; private int mYear; private int mMonth; private int mDay; 調用如下 final Calendar c = Calendar.getInstance(); mYear = c.get(Calendar.YEAR); //擷取當前年份
Time of Update: 2018-12-04
一般的Android應用程式的音樂可以分為背景音樂和點擊各種控制項時的音效,前者一般為比較大的音樂檔案,後者一般為比較小的音樂。在Android中一般用MediaPlayer類處理比較大的音頻檔案,用SoundPool類處理比較短促的音頻檔案。 因此,現設計一音樂播放工具類如下: MusicPlayer import android.content.Context;import android.media.AudioManager;import
Time of Update: 2018-12-04
起因: 在垂直方向啟動應用程式時候,橫豎屏切換正常,但是在橫屏啟動程式時,Layout載入正常,但是繪圖部分不正常,即橫屏顯示的是豎屏的布局,切換後豎屏是橫屏的布局。 解決:
Time of Update: 2018-12-04
安裝git和curl 在終端視窗敲下面的命令:sudo apt-get install git-core curl 安裝repo指令碼curl http://android.git.kernel.org/repo >~/repo 給repo可執行許可權chmod a+x ~/repo建立一個目錄mydroid , 然後進入該目錄mkdir mydroidcd mydroidrepo初始化~/repo init -u
Time of Update: 2018-12-04
習慣性的編譯操作: mm frameworks/policies/base/ 編譯之後沒有出現出錯,但是沒有出現 install out/....... .apk或者 system.img什麼的東西。 mm
Time of Update: 2018-12-04
1、修改/frameworks/base/core/res/res/values/strings.xml在此聲明幾個變數: <!-- 新增的螢幕休眠的item --> <string name="global_action_sleep">Sleep</string> <!-- 新增sleep字串 --> <string name="sleep">Sleep</string> <!--
Time of Update: 2018-12-04
在Search settings裡,Searchable items中原本有5個可勾選的項,分別是:Web , Apps , Contacts , Messaging , Music 。顯然這滿足不了我們所有的需求,使用者的慾望無止境嘛 >_< || ~~~ 下面就介紹怎樣添加我們的自己app潛伏在 Quick Search Box中,成為一個Searchable items 。
Time of Update: 2018-12-04
在 Java 裡面,我們可以把一些類放到 .jar 檔案裡面,然後用 ClassLoader 動態載入。例如:URLClassLoader ucl = URLClassLoader.newInstance(new URL[]{new URL("file:/sdcard/files/test.jar")});Class clazz =
Time of Update: 2018-12-04
3.1多了三個大包android.hardware.usb 、android.mtp 、 android.net.rtp ! USB、mtp、rtp -------三個字眼,各個血淋淋,讓人悲喜交加,Google你為何不早點發?
Time of Update: 2018-12-04
由於Android模擬器中沒有提供Sensor方面的測試,現在採用第三方提供的工具SersionSimulator. 1. 下載工具 下載SensorSimulator,SensorSimulator是一個開源免費的感應器小工具,通過該工具便可以在模擬器中調試感應器的應用, 讀者可從http://code.google.com/p/openintents/wiki/SensorSimulator網站找到該工具的下載連結 2.安裝工具
Time of Update: 2018-12-04
關於Android中的組件和應用,之前涉及,大都是靜態概念。而當一個應用運行起來,就難免會需要關心進程、線程這樣的概念。在Android中,組件的動態運行,有一個最與眾不同的概念,就是Task,翻譯成任務,應該還是比較順理成章的。Task的介入,最主要的作用,是將組件之間的串連,從進程概念的細節中剝離出來,可以以一種不同模型的東西進行配置,在很多時候,能夠簡化上層開發人員的理解難度,協助大家更好的進行開發和配置。任務在SDK中關於Task(guide/topics/fundamentals.ht
Time of Update: 2018-12-04
在一個文章裡看到一個人對JAVA和Android中的文法的比較,覺得很清晰易懂。文法就是JAVA,不過所有的東西變成了activity(每個activity 就是一個單獨的頁面),或是intent。你就暫且把activity 理解成main 吧。 一般程式是在一個activity 跳轉到另一個。每個activity 包含了很多textview,button,dialog 之類的東西,包裹跟這些介面相對應的listener, 或是event。每個activity 可以利用getextra
Time of Update: 2018-12-04
1.Sensor Type 重力感應/加速度感應器 (G-Sensor) 光感應 (Light-Sensor) 溫度感應 方向感應 磁場、 臨近性2.如何?Sensor編程 a.擷取系統服務(SENSOR_SERVICE)返回一個SensorManager 對象 sensormanager = (SensorManager)getSystemSeriver(SENSOR_SERVICE);
Time of Update: 2018-12-04
locale資訊改變之後,會發廣播訊息Intent.ACTION_LOCALE_CHANGED,具體實現在activitymanagerservice.java代碼updateConfigurationLocked函數中, 自己寫接收代碼如下: 接收代碼:public class testReceiver extends BroadcastReceiver { @Override public void onReceive(Context context,
Time of Update: 2018-12-04
首先,有一點需要聲明,其實在android中,畫布Canvas的高寬其實是螢幕的高寬。 如此一來,獲得螢幕高寬的方法就很多了: 1. Java代碼 {dp.sh.Toolbar.CopyToClipboard(this);return false;}" href="http://yuyanshan.javaeye.com/blog/750043#">WindowManager windowManager = getWindowManager();
Time of Update: 2018-12-04
大家都知道android平台最初是由google推出的,然後google又主導成立了OHA繼續推動android的發展。現在搜尋應用可能是使用率最高的一個,google最核心的產品就是搜尋,因此android必定要搭載這個功能。本文就介紹一下android上的本地搜尋方塊架。要說本地搜尋,首先就要介紹ContentProvider和ContentResolver這兩個android上的重要組件。ContentProvider直譯就是“內容提供者”,我覺得這個很形象,他就是一個類似於資料來源的東西
Time of Update: 2018-12-04
之前幫人家解決亂碼問題時回過一個文章 現在總結在部落格裡 留起來 bool handleString(char* name) { jstring rtnname = 0; int slenname = strlen(name); unsigned short * namebuffer = 0; if( slenname == 0 ) rtnname = mEnv->NewStringUTF(name); else