注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

民主与科学

独立之人格,自由之思想

 
 
 

日志

 
 

安装和卸载Android程序  

2011-03-19 08:58:12|  分类: Android其他 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

文章转自:http://blog.csdn.net/fenghome/archive/2010/06/16/5673757.aspx

在Android安装卸载程序的源码中我们知道:

  1. < activity android:name=".PackageInstallerActivity">     
  2. < intent-filter>     
  3. < action android:name="android.intent.action.VIEW" />     
  4. < category android:name="android.intent.category.DEFAULT" />     
  5. < data android:scheme="content" />     
  6. < data android:scheme="file" />     
  7. < data android:mimeType="application/vnd.android.package-archive" />     
  8. < /intent-filter>     
  9. < /activity>    
  10.    
  11. < activity android:name=".UninstallerActivity">     
  12. < intent-filter>     
  13. < action android:name="android.intent.action.VIEW" />     
  14. < action android:name="android.intent.action.DELETE" />     
  15. < category android:name="android.intent.category.DEFAULT" />     
  16. < data android:scheme="package" />     
  17. < /intent-filter>     
  18. < /activity>   

因为根据里面的权限我们可以 从sd卡安装一个程序:

  1. String fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";        
  2. Intent intent = new Intent(Intent.ACTION_VIEW);     
  3.     
  4. intent.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");     
  5. //或者     
  6. //intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");      
  7.     
  8. startActivity(intent);  
  

Android安装卸载程序的操作中要想卸载一个程序:

 

  1. Uri packageURI = Uri.parse("package:com.android.myapp");        
  2. Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);        
  3. startActivity(uninstallIntent);     

默认是不支持安装非市场程序的 因此判断一下

  1. int result = Settings.Secure.getInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS, 0);     
  2. if (result == 0) {     
  3. // show some dialog here     
  4. // ...     
  5. // and may be show application settings dialog manually     
  6. Intent intent = new Intent();     
  7. intent.setAction(Settings.ACTION_APPLICATION_SETTINGS);     
  8. startActivity(intent);    
  9. }   

  评论这张
 
阅读(513)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017