Android - 代码片段
转载说明
本篇文章可能已经更新,最新文章请转:http://www.sollyu.com/android-code-snippets/
说明
此篇文章为个人日常使用所整理的一此代码片段,此篇文正将会不定时更新
代码
评价应用
activity.startActivity(new Intent(Intent.ACTION_VIEW,Uri.parse("market://details?id=" + activity.getPackageName())));
获得系统分享列表
/**
* 获得系统分享列表
* @param context
* @return
*/
public static List< ResolveInfo > getShareApps ( Context context )
{
Intent intent = new Intent ( Intent.ACTION_SEND, null );
intent.addCategory ( Intent.CATEGORY_DEFAULT );
intent.setType ( "*/*" );
PackageManager pManager = context.getPackageManager ();
return pManager.queryIntentActivities ( intent, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT );
// for ( int i = 0; i < resolveInfos.size (); i++ )
// {
// AppInfoVo appInfoVo = new AppInfoVo ();
// ResolveInfo resolveInfo = resolveInfos.get ( i );
// appInfoVo.setAppName ( resolveInfo.loadLabel ( packageManager ).toString () );
// appInfoVo.setIcon ( resolveInfo.loadIcon ( packageManager ) );
// appInfoVo.setPackageName ( resolveInfo.activityInfo.packageName );
// appInfoVo.setLauncherName ( resolveInfo.activityInfo.name );
// appInfoVos.add ( appInfoVo );
// }
// return appInfoVos;
}
获得当前IP地址
HttpUtils.GetHtml ( "http://1111.ip138.com/ic.asp", null, new HttpUtils.HttpUtilsCallBack ()
{
@Override
public void OnFinish ( HttpResponse httpResponse, int resultCode, String resultString )
{
Pattern p = Pattern.compile ( "\\[(.+)\\]" );
Matcher m = p.matcher ( resultString );
if ( m.find () )
{
String ipAddress = m.group ( 1 );
LogUtils.OutputDebugString ( ipAddress );
}
}
@Override
public void OnError ( Exception e )
{
LogUtils.OutputDebugString ( e );
}
} );
获得当前Activity的根视图
/**
* 获得当前Activity的根视图
* @param activity
* @return
*/
public static ViewGroup GetContentView(Activity activity)
{
return ( ViewGroup ) ( ( ViewGroup ) activity.findViewById ( android.R.id.content ) ).getChildAt ( 0 );
}
打开应用
public static void OpenApp(Context context, String packageName_)
{
try
{
Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);
resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);
resolveIntent.setPackage(context.getPackageManager().getPackageInfo(packageName_, 0).packageName);
List<ResolveInfo> apps = context.getPackageManager().queryIntentActivities(resolveIntent, 0);
ResolveInfo ri = apps.iterator().next();
if (ri != null)
{
String packageName = ri.activityInfo.packageName;
String className = ri.activityInfo.name;
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
ComponentName cn = new ComponentName(packageName, className);
intent.setComponent(cn);
context.startActivity(intent);
}
}
catch (PackageManager.NameNotFoundException e)
{
e.printStackTrace();
}
}
打开URL
public static void OpenUrl(Context context, String url)
{
android.content.Intent intent = new android.content.Intent();
intent.setAction("android.intent.action.VIEW");
intent.setData(android.net.Uri.parse(url));
context.startActivity(intent);
}
public static void OpenUrl(Context context, int url)
{
android.content.Intent intent = new android.content.Intent();
intent.setAction("android.intent.action.VIEW");
intent.setData(android.net.Uri.parse(context.getString(url)));
context.startActivity(intent);
}
创建桌面快捷方式
public static void CreateShortcut(Context context, String appName, Class<?> startClass, int icon)
{
Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
shortcut.putExtra(Intent.EXTRA_SHORTCUT_NAME, appName);
shortcut.putExtra("duplicate", false);// 设置是否重复创建
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setClass(context, startClass);// 设置第一个页面
shortcut.putExtra(Intent.EXTRA_SHORTCUT_INTENT, intent);
Intent.ShortcutIconResource iconRes = Intent.ShortcutIconResource.fromContext(context, icon);
shortcut.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, iconRes);
context.sendBroadcast(shortcut);
}
分享图片到微信朋友圈
public static void shareMultiplePictureToTimeLine ( Context context, File... files )
{
Intent intent = new Intent ();
ComponentName comp = new ComponentName ( "com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI" );
intent.setComponent ( comp );
intent.setAction ( Intent.ACTION_SEND_MULTIPLE );
intent.setType ( "image/*" );
ArrayList< Uri > imageUris = new ArrayList< Uri > ();
for ( File f : files )
{
imageUris.add ( Uri.fromFile ( f ) );
}
intent.putParcelableArrayListExtra ( Intent.EXTRA_STREAM, imageUris );
context.startActivity ( intent );
}
状态栏透明
/**
* 设置状态栏透明
* @param activity
*/
public static void TranslucentStatus(Activity activity)
{
if ( android.os.Build.VERSION.SDK_INT > 18 )
{
Window window = activity.getWindow ();
window.setFlags ( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS , WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS );
window.setFlags ( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION );
}
}
ProgressDialogLoading
public static void ProgressDialogLoading ( final Context context, final ProgressDialogLoadingCallBack progressDialogLoadCallBack )
{
final ProgressDialog progressDialog = new ProgressDialog ( context );
progressDialogLoadCallBack.onInit ( context, progressDialog );
new Thread ( new Runnable ()
{
@Override
public void run ()
{
progressDialogLoadCallBack.onRun ( context, progressDialog );
progressDialog.dismiss ();
}
} ).start ();
}
public static interface ProgressDialogLoadingCallBack
{
public void onInit ( Context context, ProgressDialog progressDialog );
public void onRun ( Context context, ProgressDialog progressDialog );
}
ImageView 设置图片
ImageView.setImageResource(R.drawable.icon);
杀死对应的Android程序
/**
* 杀死对应的Android程序,而不会自动启动
* @param pkgName 应用程序的包名
*/
public static void forceStopAPK ( String pkgName ) throws Exception
{
Process sh = Runtime.getRuntime ().exec ( "su" );
DataOutputStream os = new DataOutputStream ( sh.getOutputStream () );
final String Command = "am force-stop " + pkgName + "\n";
os.writeBytes ( Command );
os.flush ();
sh.waitFor ();
}
备注
Android - 代码片段的更多相关文章
- 【Android代码片段之六】Toast工具类(实现带图片的Toast消息提示)
转载请注明出处,原文网址:http://blog.csdn.net/m_changgong/article/details/6841266 作者:张燕广 实现的Toast工具类ToastUtil封装 ...
- 【Android代码片段之八】监听Android屏幕是否锁屏
实现方法:1)通过BroadcastReceiver接收广播Intent.ACTION_SCREEN_ON和Intent.ACTION_SCREEN_OFF可以判断屏幕状态是否锁屏,但是只有屏幕状态发 ...
- android代码片段二
1.Android拦截短信 一.AndroidManifest.xml <uses-permission android:name="android.permission.RECE ...
- 实用的Android代码片段集合(精)
1.精确获取屏幕尺寸(例如:3.5.4.0.5.0寸屏幕) public static double getScreenPhysicalSize(Activity ctx) { DisplayMetr ...
- 给大家介绍几个常见的Android代码片段
今天在源码天堂那个网站,也下载了一个不错的Android源码特效,现在分享一下给博客园的朋友吧,个人觉得那个网站还是挺不错的,希望大家能够使用得上. 仿美图秀秀拼图功能源码 仿美图秀秀拼图功能源码,最 ...
- android代码片段一
1.Android判断是Pad或者手机 public boolean isTabletDevice() { TelephonyManager telephony = (TelephonyManager ...
- Android课程---Android Studio使用小技巧:提取方法代码片段
这篇文章主要介绍了Android Studio使用小技巧:提取方法代码片段,本文分享了一个快速复制粘贴方法代码片段的小技巧,并用GIF图演示,需要的朋友可以参考下 今天来给大家介绍一个非常有用的Stu ...
- Android适配器之ArrayAdapter、SimpleAdapter和BaseAdapter的简单用法与有用代码片段(转)
摘自:http://blog.csdn.net/shakespeare001/article/details/7926783 Adapter是连接后端数据和前端显示的适配器接口,是数据Data和UI( ...
- 转--Android实用的代码片段 常用代码总结
这篇文章主要介绍了Android实用的代码片段 常用代码总结,需要的朋友可以参考下 1:查看是否有存储卡插入 复制代码 代码如下: String status=Environment.getE ...
随机推荐
- C++ Caption
主题 1. 设置控件的标题文本 2. 获取控件的标题文本 Caption属性 取得一个窗体的标题(caption)文字,或者一个控件的内容 红色的部分就是 Caption 标题 Set ...
- java源码部署
环境:nginx+tomcat部署方式:源码部署源码目录 /chroot2/test/schedule 目录下面就是所有源码了tomcat 位置: /usr/local/tomcat/apache-t ...
- 百度地图经纬度转换JS版
//百度地图的坐标转换,由于百度地图在GCJ02协议的基础上又做了一次处理,变为 BD09协议的坐标,以下是坐标的转化方式,可以方便和其他平台转化 jQuery.MapConvert = { x_pi ...
- HBuilder:最快的Web开发IDE
这里给大家介绍一个个人觉得最好用的web开发工具:Hbuilder. HBuilder是DCloud推出的一款支持HTML5的Web开发IDE.快,是HBuilder的最大优势,通过完整的语法提示和代 ...
- 构建千万级web访问架构
. HTML静态化 其实大家都知道,效率最高.消耗最小的就是纯静态化的html页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法.但是对于大量内容并且频繁 ...
- Asp.Net 之 抓取网页内容
一.获取网页内容——html ASP.NET 中抓取网页内容是非常方便的,而其中更是解决了 ASP 中困扰我们的编码问题. 需要三个类:WebRequest.WebResponse.StreamRea ...
- cocos2d-x lua与c++简单交互
cocos2d-x lua与c++简单交互 version: cocos2d-x 3.6 本文讲述lua与c++的一些简单交互: lua通过消息方式调用c++无参接口 c++调用lua带参接口 1.通 ...
- linux注销开关机
注销:exit 重启:reboot shutdown-r 表示延时分钟数 关机:halt shut -h
- centos7重置root开机登录密码
今天忘记了centos7 root登录的密码,本来要好好的做个图文的教程也好啊,但是忘记截图什么的,就不在重复的工作了, 参考了下面的两个链接重置了密码,结合使用效果更好哦,嘿嘿.. 下次要是再遇到这 ...
- LInux下socket编程学习笔记
1.socket套接字: socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模 ...