• android编程中的琐碎知识点汇总(4)


    1.从SMS获取联系人信息

    Java代码  收藏代码
    1. ContactItem getContactByAddr(Context context, final SMSItem sms) {    
    2.     Uri personUri = Uri.withAppendedPath(    
    3.             ContactsContract.PhoneLookup.CONTENT_FILTER_URI, sms.mAddress);    
    4.     Cursor cur = context.getContentResolver().query(personUri,    
    5.             new String[] { PhoneLookup.DISPLAY_NAME },    
    6.             nullnullnull );    
    7.     if( cur.moveToFirst() ) {    
    8.         int nameIdx = cur.getColumnIndex(PhoneLookup.DISPLAY_NAME);    
    9.         ContactItem item = new ContactItem();    
    10.         item.mName = cur.getString(nameIdx);    
    11.        cur.close();    
    12.        return item;    
    13.    }    
    14.    return null;    
    15. }  

    2.从gallery获取图片并显示

    Java代码  收藏代码
    1. protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {   
    2.     super.onActivityResult(requestCode, resultCode, imageReturnedIntent);   
    3.   
    4.     switch(requestCode) {   
    5.     case REQ_CODE_PICK_IMAGE:  
    6.         if(resultCode == RESULT_OK){    
    7.             Uri selectedImage = imageReturnedIntent.getData();  
    8.             String[] filePathColumn = {MediaStore.Images.Media.DATA};  
    9.             Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, nullnullnull);  
    10.             cursor.moveToFirst();  
    11.             int columnIndex = cursor.getColumnIndex(filePathColumn[0]);  
    12.             String filePath = cursor.getString(columnIndex);  
    13.             cursor.close();  
    14.             Bitmap yourSelectedImage = BitmapFactory.decodeFile(filePath);  
    15.         }  
    16.     }  
    17. }  

     3.service 里面使用toast

    Java代码  收藏代码
    1. public class ConnectionService extends Service {    
    2.   private Handler handler = new Handler();  
    3.   
    4.   public void restartConnection(){  
    5.      int sleepTime = reconnectCounter * MIN_RECON_WAIT;  
    6.      if (sleepTime > MAX_RECON_WAIT){  
    7.         sleepTime = MAX_RECON_WAIT;  
    8.      }  
    9.      String msg = "The connection has been lost.  Restart attempt will start in: " + sleepTime/1000 + " seconds";  
    10.      (new Timer()).schedule(  
    11.      new TimerTask() {  
    12.         public void run() {  
    13.            handler.post(new Runnable() {  
    14.               public void run() {  
    15.                  Toast.makeText(getApplicationContext(), "msg", Toast.LENGTH_LONG).show();  
    16.                  reconnectCounter++;  
    17.                  this.startConnectionThread()  
    18.               }  
    19.            });  
    20.         }  
    21.      }, sleepTime);  
    22.   }//end restartConnection  
    23. }//end ConnectionService  

     4.禁用webView 放大缩小

    Xml代码  收藏代码
    1. <meta content='width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;' name='viewport' />  
    2. <meta name="viewport" content="width=device-width" />  

     5.margin代码实现View周围空出距离

    Java代码  收藏代码
    1. extView tv = (TextView)findViewById(R.id.my_text_view);  
    2. LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)tv.getLayoutParams();  
    3. params.setMargins(00100); tv.setLayoutParams(params);  

    6.内部类的使用

    Xml代码  收藏代码
    1. <view class="com.android.notepad.NoteEditor$MyEditText"   
    2.     id="@+id/note"  
    3.     android:layout_width="fill_parent"  
    4.     android:layout_height="fill_parent"  
    5.     android:background="@android:drawable/empty"  
    6.     android:padding="10dip"  
    7.     android:scrollbars="vertical"  
    8.     android:fadingEdge="vertical" />  

    7.使用本地tomcat自己搭建服务器注意点:

    Java代码  收藏代码
    1. 在模拟器上可以用10.0.2.2代替127.0.0.1和localhost   
    2. 在局域网环境可以用 192.168.0.x或者192.168.1.x(根据具体配置)连接本机   

    8.反编译apk中的文件或者生成apk所用到的:

    Java代码  收藏代码
    1. 事先声明必须使用相关工具  
    2.   
    3. 反编译xml为我们可以看懂的格式  
    4. java -jar AXMLPrinter2.jar ***.xml>***.txt  
    5. 发编译classes.dex到当前目录的classout中  
    6. java -jar baksmali.jar -o classout/ classes.dex  
    7. 编译classout下的文件为classes.dex  
    8. java -jar smali.jar classout/ -o classes.dex 
  • 相关阅读:
    LeetCode 动态规划专题
    LeetCode 双指针、滑动窗口、单调队列专题
    LeetCode 单调栈专题
    LeetCode DFS搜索与回溯专题
    LeetCode树专题
    操作系统思维导图| IO管理篇
    2020-为什么换了工作
    深入浅出Spring MVC
    rocketmq初识
    线上故障处理手册
  • 原文地址:https://www.cnblogs.com/myphoebe/p/2314834.html
Copyright © 2020-2023  润新知