您的位置:首页 > 移动开发 > Android开发

把自己的应用设置关联为android系统默认打开程序

2013-04-14 16:32 971 查看
1.首先修改androidmanifest.xml文件

插入下面代码中灰色背景的部分,本例子是使得应用能够查看图片。

你可以根据需要设置data域的mime类型,以支持不同的需求,

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.frank.setdefault.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*"/>
</intent-filter>
</activity>
</application>

2.修改应用的oncreate方法

在oncreate方法中要添加代码获取intent,处理传入的参数。

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
img = (ImageView) findViewById(R.id.imgV);
Intent intent = getIntent();
String action = intent.getAction();
if (intent.ACTION_VIEW.equals(action)) {
Uri uri = intent.getData();
Log.e("uri", uri.toString());
ContentResolver cr = getContentResolver();
try {
Bitmap bitmap = BitmapFactory.decodeStream(cr.openInputStream(uri));
img.setImageBitmap(bitmap);
} catch (FileNotFoundException e) {
Log.e("Exception", e.getMessage(),e);
}
}
}

该方法已经过测试,可行
本文出自 “逆流而上” 博客,请务必保留此出处http://tianya30.blog.51cto.com/6392610/1178031
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: