Android開發(fā)常用經(jīng)典代碼段集錦
本文實(shí)例總結(jié)了Android開發(fā)常用經(jīng)典代碼段。分享給大家供大家參考,具體如下:
1、圖片旋轉(zhuǎn)
Bitmap bitmapOrg = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable.moon); Matrix matrix = new Matrix(); matrix.postRotate(-90);//旋轉(zhuǎn)的角度 Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0, bitmapOrg.getWidth(), bitmapOrg.getHeight(), matrix, true); BitmapDrawable bmd = new BitmapDrawable(resizedBitmap);
2、獲取手機(jī)號(hào)碼
//創(chuàng)建電話管理 TelephonyManager tm = (TelephonyManager) //與手機(jī)建立連接 activity.getSystemService(Context.TELEPHONY_SERVICE); //獲取手機(jī)號(hào)碼 String phoneId = tm.getLine1Number(); //記得在manifest file中添加 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> //程序在模擬器上無(wú)法實(shí)現(xiàn),必須連接手機(jī)
3.格式化string.xml 中的字符串
// in strings.xml.. <string name="my_text">Thanks for visiting %s. You age is %d!</string> // and in the java code: String.format(getString(R.string.my_text), "oschina", 33);
4、android設(shè)置全屏的方法
A.在java代碼中設(shè)置
/** 全屏設(shè)置,隱藏窗口所有裝飾 */ requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
B、在AndroidManifest.xml中配置
<activity android:name=".Login.NetEdit" android:label="@string/label_net_Edit" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"> <intent-filter> <action android:name="android.intent.Net_Edit" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity>
5、設(shè)置Activity為Dialog的形式
在AndroidManifest.xml中配置Activity節(jié)點(diǎn)是配置theme如下:
android:theme="@android:style/Theme.Dialog"
6、檢查當(dāng)前網(wǎng)絡(luò)是否連上
ConnectivityManager con=(ConnectivityManager)getSystemService(Activity.CONNECTIVITY_SERVICE); boolean wifi=con.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting(); boolean internet=con.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
在AndroidManifest.xml 增加權(quán)限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
7、檢測(cè)某個(gè)Intent是否有效
public static boolean isIntentAvailable(Context context, String action) { final PackageManager packageManager = context.getPackageManager(); final Intent intent = new Intent(action); List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); return list.size() > 0; }
8、android 撥打電話
try { Intent intent = new Intent(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:+110")); startActivity(intent); } catch (Exception e) { Log.e("SampleApp", "Failed to invoke call", e); }
9、android中發(fā)送Email
Intent i = new Intent(Intent.ACTION_SEND); //i.setType("text/plain"); //模擬器請(qǐng)使用這行 i.setType("message/rfc822") ; // 真機(jī)上使用這行 i.putExtra(Intent.EXTRA_EMAIL, new String[]{"test@gmail.com","test@163.com}); i.putExtra(Intent.EXTRA_SUBJECT,"subject goes here"); i.putExtra(Intent.EXTRA_TEXT,"body goes here"); startActivity(Intent.createChooser(i, "Select email application."));
10、android中打開瀏覽器
Intent viewIntent = new Intent("android.intent.action.VIEW",Uri.parse("http://vaiyanzi.cnblogs.com")); startActivity(viewIntent);
11、android 獲取設(shè)備唯一標(biāo)識(shí)碼
String android_id = Secure.getString(getContext().getContentResolver(), Secure.ANDROID_ID);
12、android中獲取IP地址
public String getLocalIpAddress() { try { for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress()) { return inetAddress.getHostAddress().toString(); } } } } catch (SocketException ex) { Log.e(LOG_TAG, ex.toString()); } return null; }
13、android獲取存儲(chǔ)卡路徑以及使用情況
/** 獲取存儲(chǔ)卡路徑 */ File sdcardDir=Environment.getExternalStorageDirectory(); /** StatFs 看文件系統(tǒng)空間使用情況 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /** Block 的 size*/ Long blockSize=statFs.getBlockSize(); /** 總 Block 數(shù)量 */ Long totalBlocks=statFs.getBlockCount(); /** 已使用的 Block 數(shù)量 */ Long availableBlocks=statFs.getAvailableBlocks();
14 android中添加新的聯(lián)系人
private Uri insertContact(Context context, String name, String phone) { ContentValues values = new ContentValues(); values.put(People.NAME, name); Uri uri = getContentResolver().insert(People.CONTENT_URI, values); Uri numberUri = Uri.withAppendedPath(uri, People.Phones.CONTENT_DIRECTORY); values.clear(); values.put(Contacts.Phones.TYPE, People.Phones.TYPE_MOBILE); values.put(People.NUMBER, phone); getContentResolver().insert(numberUri, values); return uri; }
15、查看電池使用情況
Intent intentBatteryUsage = new Intent(Intent.ACTION_POWER_USAGE_SUMMARY); startActivity(intentBatteryUsage);
16、獲取進(jìn)程號(hào)
ActivityManager mActivityManager = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE); List<ActivityManager.RunningAppProcessInfo> mRunningProcess = mActivityManager.getRunningAppProcesses(); int i = 1; for (ActivityManager.RunningAppProcessInfo amProcess : mRunningProcess) { Log.e("homer Application", (i++) + " PID = " + amProcess.pid + "; processName = " + amProcess.processName); }
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進(jìn)階教程》、《Android控件用法總結(jié)》、《Android短信與電話操作技巧匯總》及《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android開發(fā)中實(shí)現(xiàn)用戶注冊(cè)和登陸的代碼實(shí)例分享
- Android開發(fā)自學(xué)筆記(五):使用代碼控制界面
- 分享幾個(gè)Android開發(fā)有用的程序代碼
- Android應(yīng)用開發(fā)之代碼混淆
- Android應(yīng)用開發(fā):電話監(jiān)聽和錄音代碼示例
- android開發(fā)教程之時(shí)間對(duì)話框核心代碼
- android開發(fā)之方形圓角listview代碼分享
- Android應(yīng)用開發(fā)中模擬按下HOME鍵的效果(實(shí)現(xiàn)代碼)
- 解析Android開發(fā)優(yōu)化之:從代碼角度進(jìn)行優(yōu)化的技巧
- android開發(fā)之蜂鳴提示音和震動(dòng)提示的實(shí)現(xiàn)原理與參考代碼
相關(guān)文章
flutter PositionedTransition實(shí)現(xiàn)縮放動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了flutter PositionedTransition實(shí)現(xiàn)縮放動(dòng)畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-07-07Android Studio finish()方法的使用與解決app點(diǎn)擊“返回”(直接退出)
這篇文章主要介紹了Android Studio finish()方法的使用與解決app點(diǎn)擊“返回”(直接退出),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04Android開發(fā)中的MVC設(shè)計(jì)模式淺析
這篇文章主要介紹了Android開發(fā)中的MVC設(shè)計(jì)模式淺析,本文講解了對(duì)Android開發(fā)中的MVC設(shè)計(jì)模式的理解,需要的朋友可以參考下2015-06-06Android開發(fā)之ViewSwitcher用法實(shí)例
這篇文章主要介紹了Android開發(fā)之ViewSwitcher用法,結(jié)合實(shí)例形式分析了ViewSwitcher的功能、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-02-02Android?studio實(shí)現(xiàn)單選按鈕
這篇文章主要為大家詳細(xì)介紹了Android?studio實(shí)現(xiàn)單選按鈕,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05Android開發(fā)之針對(duì)聯(lián)系人的封裝
本文給大家分享的是如何在Android開發(fā)中封裝聯(lián)系人模塊以及封裝后的使用及總結(jié),最后奉上代碼,有需要的小伙伴可以參考下。2016-02-02