Android开发中的小技术

1.WebView加载各种类型的网页

?
//打开本包内asset目录下的index.html文件
wView.loadUrl( " file:///android_asset/index.html " ); 
 
//打开本地sd卡内的index.html文件
 
//打开指定URL的html文件
wView.loadUrl( " http://m.oschina.net" );

 

2.在一个应用程序中启动另外一个应用程序

?
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);           
ComponentName cn = new ComponentName( "com.android.androidweb" , "com.android.androidweb.AndroidWeb" ); //前面是包名,后面是主类名        
intent.setComponent(cn);
startActivity(intent);

下面记录一个很特殊的,是系统自带的相册程序:

?
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);           
ComponentName cn = new ComponentName( "com.android.gallery" , "com.android.camera.GalleryPicker" );           
intent.setComponent(cn);
startActivity(intent);

知道包名获取启动类的方法:

?
PackageManager pm = getPackageManager();
PackageInfo pi;
try {
     pi = pm.getPackageInfo( "com.android.androidweb" , 0 ); //此处加入包名~
     Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null );
     resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);
     resolveIntent.setPackage(pi.packageName);
 
     List<ResolveInfo> apps = pm.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);
       startActivity(intent);
       }
     } catch (NameNotFoundException e) {
        // TODO Auto-generated catch block
       e.printStackTrace();
     }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值