`
ilikeido
  • 浏览: 26767 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
谷歌地图反向解析
http://ditu.google.cn/maps/geo?hl=zh-CN&output=csv&key=abcdef&q=31.1198723,121.1099877
Object-c中文提交转utf-8
puname = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL,
                                                                        (CFStringRef)searchBar.text,
                                                                        NULL,
                                                                        (CFStringRef)@"!*'$, %#[]",
                                                                        kCFStringEncodingUTF8);
android 隐藏图标
只需去掉
<category android:name="android.intent.category.LAUNCHER" />
android actionGroup的使用
# public class testActivityGroup extends ActivityGroup {  
#     /** Called when the activity is first created. */  
#     LinearLayout container;//装载sub Activity的容器  
#     ImageButton ibtnTab1,ibtnTab2;  
#     @Override  
#     public void onCreate(Bundle savedInstanceState) {  
#         super.onCreate(savedInstanceState);  
#         setContentView(R.layout.main);  
#           
#         container = (LinearLayout) findViewById(R.id.LinearLayout02);  
#         ibtnTab1=(ImageButton)this.findViewById(R.id.ibtnTab1);  
#         ibtnTab1.setOnClickListener(new ClickEvent());  
#         ibtnTab2=(ImageButton)this.findViewById(R.id.ibtnTab2);  
#         ibtnTab2.setOnClickListener(new ClickEvent());  
#     }  
#       
#     class ClickEvent implements View.OnClickListener{  
#   
#         @Override  
#         public void onClick(View v) {  
#             container.removeAllViews();  
#             Intent intent=new Intent(testActivityGroup.this, subActivity.class);  
#             intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
#             String[] str=new String[12];  
#             if(v==ibtnTab1)  
#             {  
#                 for(int i=0;i<str.length;i++)  
#                     str[i]="单选"+String.valueOf(i);  
#                 intent.putExtra("Name", "subActivity1");  
#                 intent.putExtra("Strings", str);  
#                 intent.putExtra("ChoiceMode", ListView.CHOICE_MODE_SINGLE);//通过参数设置列表式样  
#             }  
#             else if(v==ibtnTab2)  
#             {  
#                 for(int i=0;i<str.length;i++)  
#                     str[i]="复选"+String.valueOf(i);  
#                 intent.putExtra("Name", "subActivity2");  
#                 intent.putExtra("Strings", str);  
#                 intent.putExtra("ChoiceMode", ListView.CHOICE_MODE_MULTIPLE);//通过参数设置列表式样  
#             }  
#   
#             Window subActivity=getLocalActivityManager().startActivity("subActivity",intent);  
#             container.addView(subActivity.getDecorView());  
#         }  
#           
#     }  
# }  
Android删除短信的处理
android的很多功能都是需要权限才能操作,还是有很多功能我们是可以直接操作的,只需要在配置文件中注明权限就行了,可是有些虽然注明了权限,但是还是会提示说你没权限。比如删除短信、让手机进入休眠状态(gotoSleep)。下面就介绍一下我是如何删除一条属于黑名单中的短信:

                 1、获取你想要删除的短信的线程ID(因为我想删除最近收到的一条短信,所以我只需按时间进行倒序,然后获取第一条短信的线程ID就行了)

private long getThreadId() {

long threadId = 0;

String SMS_READ_COLUMN = "read";

String WHERE_CONDITION = SMS_READ_COLUMN + " = 0";

String SORT_ORDER = "date DESC";

int count = 0;

Cursor cursor = mContext.getContentResolver().query(

Uri.parse("content://sms/inbox"),new String[]{ "_id", "thread_id", "address", "person", "date", "body" },
WHERE_CONDITION,null,SORT_ORDER);

if (cursor != null) {

try {

count = cursor.getCount();

if (count > 0) {

cursor.moveToFirst();

threadId = cursor.getLong(1);

}

} finally {

cursor.close();

}

}

Log.i("threadId", String.valueOf(threadId));

return threadId;

}

private long getThreadId() {

long threadId = 0;

String SMS_READ_COLUMN = "read";

String WHERE_CONDITION = SMS_READ_COLUMN + " = 0";

String SORT_ORDER = "date DESC";

int count = 0;

Cursor cursor = mContext.getContentResolver().query(

Uri.parse("content://sms/inbox"),new String[] { "_id", "thread_id", "address", "person", "date", "body" },
WHERE_CONDITION,null,SORT_ORDER);

if (cursor != null) {

try {

count = cursor.getCount();

if (count > 0) {

cursor.moveToFirst();

threadId = cursor.getLong(1);

}

} finally {

cursor.close();

}

}

Log.i("threadId", String.valueOf(threadId));

return threadId;

}

  2、删除短信

long id = getThreadId();

Uri mUri=Uri.parse("content://sms/conversations/" + id);

mContext.getContentResolver().delete(mUri, null, null);

long id = getThreadId();

Uri mUri=Uri.parse("content://sms/conversations/" + id);

mContext.getContentResolver().delete(mUri, null, null);

这能通过这种方式删除短信,如果你想通过其他条件删除的话,那么就会提示你不够权限删除。但是这种方式只是删除收信箱中的短信
android 常用数据库字段描述

        
android 获取联系人头像

        
android socket通信
Android上的客户端程序,在一般情况下,隔一段时间就需要升级更新,而最方便的方式,莫过于在线更新,下面就来讲讲 怎么实现。

  当然,首先你需要有一个服务器,用来存储最新版本的客户端,并提供下载。服务端的程序暂时不说。 主要是客户端,首先你需要写一个配置文件,放在程序能读取到的地方,比如assert中,配置文件中是服务器的一些信息 。然后客户端在程序初始化的时候,首先解析配置文件 ,取得服务器URL,然后访问服务器,在访问http头中,加入一个新的熟悉,比如"version",这个属性当然也是配置文件中定义好的,然后值是你的当前版本号,取得返回头,如果返回头中的"version"为空,则无最新版本,如果不为空,则有,然后就读取流,把文件下载到指定位置。下载完以后,提示系统去安装就可以了,安装代码如下:

 
view sourceprint?
1	Intent intent = new Intent(Intent.ACTION_VIEW);
2	        intent.setDataAndType(/*临时路径*/,
3	                "application/vnd.android.package-archive");
4	        context.startActivity(intent);<br>

 

然后就是系统的事啦,写的有些乱,不过总体思路就是这样。
android 自动升级
Android上的客户端程序,在一般情况下,隔一段时间就需要升级更新,而最方便的方式,莫过于在线更新,下面就来讲讲 怎么实现。

  当然,首先你需要有一个服务器,用来存储最新版本的客户端,并提供下载。服务端的程序暂时不说。 主要是客户端,首先你需要写一个配置文件,放在程序能读取到的地方,比如assert中,配置文件中是服务器的一些信息 。然后客户端在程序初始化的时候,首先解析配置文件 ,取得服务器URL,然后访问服务器,在访问http头中,加入一个新的熟悉,比如"version",这个属性当然也是配置文件中定义好的,然后值是你的当前版本号,取得返回头,如果返回头中的"version"为空,则无最新版本,如果不为空,则有,然后就读取流,把文件下载到指定位置。下载完以后,提示系统去安装就可以了,安装代码如下:

 
view sourceprint?
1	Intent intent = new Intent(Intent.ACTION_VIEW);
2	        intent.setDataAndType(/*临时路径*/,
3	                "application/vnd.android.package-archive");
4	        context.startActivity(intent);<br>

 

然后就是系统的事啦,写的有些乱,不过总体思路就是这样。
android 添加桌面快捷方式

        
android 呼叫转移

        
android 图像变灰
Drawable mDrawable = context.getResources().getDrawable(R.drawable.face_icon);  
//Make this drawable mutable.  
//A mutable drawable is guaranteed to not share its state with any other drawable.  
mDrawable.mutate();  
ColorMatrix cm = new ColorMatrix();  
cm.setSaturation(0);  
ColorMatrixColorFilter cf = new ColorMatrixColorFilter(cm);  
mDrawable.setColorFilter(cf); 
Drawable mDrawable = context.getResources().getDrawable(R.drawable.face_icon);
//Make this drawable mutable.
//A mutable drawable is guaranteed to not share its state with any other drawable.
mDrawable.mutate();
ColorMatrix cm = new ColorMatrix();
cm.setSaturation(0);
ColorMatrixColorFilter cf = new ColorMatrixColorFilter(cm);
mDrawable.setColorFilter(cf); 
android 常用Intent
1,调web浏览器
Uri myBlogUri = Uri.parse("http://xxxxx.com");
returnIt = new Intent(Intent.ACTION_VIEW, myBlogUri);
2,地图
Uri mapUri = Uri.parse("geo:38.899533,-77.036476");
returnIt = new Intent(Intent.ACTION_VIEW, mapUri);
3,调拨打电话界面
Uri telUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_DIAL, telUri);
4,直接拨打电话
Uri callUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_CALL, callUri);
5,卸载
Uri uninstallUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri);
6,安装
Uri installUri = Uri.fromParts("package", "xxx", null);
returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
7,播放
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
returnIt = new Intent(Intent.ACTION_VIEW, playUri);
8,掉用发邮件
Uri emailUri = Uri.parse("mailto:xxxx@gmail.com");
returnIt = new Intent(Intent.ACTION_SENDTO, emailUri);
9,发邮件
returnIt = new Intent(Intent.ACTION_SEND);
String[] tos = { "xxxx@gmail.com" };
String[] ccs = { "xxxx@gmail.com" };
returnIt.putExtra(Intent.EXTRA_EMAIL, tos);
returnIt.putExtra(Intent.EXTRA_CC, ccs);
returnIt.putExtra(Intent.EXTRA_TEXT, "body");
returnIt.putExtra(Intent.EXTRA_SUBJECT, "subject");
returnIt.setType("message/rfc882");
Intent.createChooser(returnIt, "Choose Email Client");
10,发短信
Uri smsUri = Uri.parse("tel:100861");
returnIt = new Intent(Intent.ACTION_VIEW, smsUri);
returnIt.putExtra("sms_body", "yyyy");
returnIt.setType("vnd.android-dir/mms-sms");
11,直接发邮件
Uri smsToUri = Uri.parse("smsto://100861");
returnIt = new Intent(Intent.ACTION_SENDTO, smsToUri);
returnIt.putExtra("sms_body", "yyyy");
12,发彩信
Uri mmsUri = Uri.parse("content://media/external/images/media/23");
returnIt = new Intent(Intent.ACTION_SEND);
returnIt.putExtra("sms_body", "yyyy");
returnIt.putExtra(Intent.EXTRA_STREAM, mmsUri);
returnIt.setType("image/png");
13.调用联系人列表:
  Intent intent = new Intent(); 
    intent.setAction(Intent.ACTION_PICK); 
    intent.setData(Contacts.People.CONTENT_URI); 
    startActivity(intent); 
    startActivityForResult(intent, 0); 
Global site tag (gtag.js) - Google Analytics