分享

Android App开发常用功能实用源代码分享 By L.E.R.

 yyLibraty 2014-03-10



Android App开发常用功能源代码分享


为了给XDACN和L.E.R.的大神们快速开发App,笔者从各处收集了App开发时
常用功能源代码:

1、图片旋转

  1. Bitmap bitmapOrg = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable.moon);
  2. Matrix matrix = new Matrix();
  3. matrix.postRotate(-90);//旋转的角度
复制代码
2、获取手机号码

  1. //创建电话管理

  2. TelephonyManager tm = (TelephonyManager)

  3. //与手机建立连接
  4. activity.getSystemService(Context.TELEPHONY_SERVICE);

  5. //获取手机号码

  6. String phoneId = tm.getLine1Number();

  7. //记得在manifest file中添加
  8.     <uses-permission
  9. android:name="android.permission.READ_PHONE_STATE" />

  10. //程序在模拟器上无法实现,必须连接手机
复制代码
3.格式化string.xml 中的字符串

  1. // in strings.xml..
  2. <string name="my_text">Thanks for visiting %s. You age is %d!</string>
  3.      
  4.      
  5. // and in the java code:
  6. String.format(getString(R.string.my_text), "oschina", 33);
复制代码
4、android设置全屏的方法A.在java代码中设置
  1. /** 全屏设置,隐藏窗口所有装饰 */
  2. requestWindowFeature(Window.FEATURE_NO_TITLE);
  3. getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  4.                 WindowManager.LayoutParams.FLAG_FULLSCREEN);
复制代码
B.在AndroidManifest.xml中配置
  1. <activity android:name=".Login.NetEdit"  android:label="@string/label_net_Edit"
  2.                           android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">
  3.         <intent-filter>
  4.                 <action android:name="android.intent.Net_Edit" />
  5.                 <category android:name="android.intent.category.DEFAULT" />
  6.         </intent-filter>
  7. </activity>
复制代码
5、设置Activity为Dialog的形式
在AndroidManifest.xml中配置Activity节点是配置theme如下:
  1. android:theme="@android:style/Theme.Dialog"
复制代码


6、检查当前网络是否连上
  1. ConnectivityManager con=(ConnectivityManager)getSystemService(Activity.CONNECTIVITY_SERVICE);  

  2. boolean wifi=con.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();  

  3. boolean internet=con.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
复制代码
在AndroidManifest.xml 增加权限:
  1. <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
复制代码


7、检测某个Intent是否有效
  1. public static boolean isIntentAvailable(Context context, String action)
复制代码


8、拨打电话
  1. try {
  2.    Intent intent = new Intent(Intent.ACTION_CALL);
  3.    intent.setData(Uri.parse("tel:+110"));
  4.    startActivity(intent);
  5. } catch (Exception e) {
  6.    Log.e("SampleApp", "Failed to invoke call", e);
  7. }
复制代码


9、android中发送Email
  1. Intent i = new Intent(Intent.ACTION_SEND);  
  2. //i.setType("text/plain"); //模拟器请使用这行
  3. i.setType("message/rfc822") ; // 真机上使用这行
  4. i.putExtra(Intent.EXTRA_EMAIL, new String[]{"test@gmail.com","test@163.com});  
  5. i.putExtra(Intent.EXTRA_SUBJECT,"subject goes here");  
  6. i.putExtra(Intent.EXTRA_TEXT,"body goes here");  
  7. startActivity(Intent.createChooser(i, "Select email application."));
复制代码


10、打开浏览器
  1. Intent viewIntent = new
  2.     Intent("android.intent.action.VIEW",Uri.parse("http://vaiyanzi.cnblogs.com"));

  3. startActivity(viewIntent);
复制代码


11、android 获取设备唯一标识码
  1. String android_id = Secure.getString(getContext().getContentResolver(), Secure.ANDROID_ID);
复制代码


12、android中获取IP地址
  1. public String getLocalIpAddress() {
  2.     try {
  3.         for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces();
  4.                 en.hasMoreElements();) {
  5.             NetworkInterface intf = en.nextElement();
  6.             for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses();
  7.                 enumIpAddr.hasMoreElements();) {
  8.                 InetAddress inetAddress = enumIpAddr.nextElement();
  9.                 if (!inetAddress.isLoopbackAddress()) {
  10.                     return inetAddress.getHostAddress().toString();
  11.                 }
  12.             }
  13.         }
  14.     } catch (SocketException ex) {
  15.         Log.e(LOG_TAG, ex.toString());
  16.     }
  17.     return null;
  18. }
复制代码


13、android获取存储卡路径以及使用情况
  1. /** 获取存储卡路径 */
  2. File sdcardDir=Environment.getExternalStorageDirectory();
  3. /** StatFs 看文件系统空间使用情况 */
  4. StatFs statFs=new StatFs(sdcardDir.getPath());
  5. /** Block 的 size*/
  6. Long blockSize=statFs.getBlockSize();
  7. /** 总 Block 数量 */
  8. Long totalBlocks=statFs.getBlockCount();
  9. /** 已使用的 Block 数量 */
  10. Long availableBlocks=statFs.getAvailableBlocks();
复制代码


14 android中添加新的联系人
  1. private Uri insertContact(Context context, String name, String phone) {
  2.            
  3.        ContentValues values = new ContentValues();
  4.        values.put(People.NAME, name);
  5.        Uri uri = getContentResolver().insert(People.CONTENT_URI, values);
  6.        Uri numberUri = Uri.withAppendedPath(uri, People.Phones.CONTENT_DIRECTORY);
  7.        values.clear();
  8.       
  9.        values.put(Contacts.Phones.TYPE, People.Phones.TYPE_MOBILE);
  10.        values.put(People.NUMBER, phone);
  11.        getContentResolver().insert(numberUri, values);
  12.       
  13.        return uri;
  14. }
复制代码


15、查看电池使用情况
  1. Intent intentBatteryUsage = new Intent(Intent.ACTION_POWER_USAGE_SUMMARY);        
  2. startActivity(intentBatteryUsage);
复制代码


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多