Button btn5 = (Button) findViewById(R.id.btn5);
btn5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
Intent intent = new Intent(Intent.ACTION_VIEW);
//参数是应用程序的包名
intent.setData(Uri.parse("market://details?id=" + getPackageName()));
//通过隐式意图激活activity
startActivity(intent);
} catch (ActivityNotFoundException e) {
Toast.makeText(CustomScorllViewActivity.this, "抱歉,你没有安装应用市场", Toast.LENGTH_LONG);
}
}
});
1) 跳转到对应的应用商店,apk详情展示页面进行评分!
2) Uri.parse() 这里的parse方法返回的是一个URI类型,通过这个URI可以访问一个网络上或者是本地的资源.
3) Activity之间交替一般通过Intent,你可以显式的使用intent,将你想调用的activity指定了;另一种就是隐式调用,依赖系统决定调用哪个activity,系统会查找各个acitvity intent-filter,找出action最匹配的activity,然后调用;就像找人一样,一种是指名道姓,另外你可以通过体貌特征找. (显示意图激活activity和隐式意图激活activity)。
4)隐式意图激活activity,一般应用于两个应用程序之间组件的激活。
<activity android:name="cn.itcast.wh07.b.OtherActivity" android:label="OtherActivity">
<!-- 通过设置intent-filter对外进行暴露自己 -->
<intent-filter >
<!-- 动作 别人激活的时候需要指定 -->
<action android:name="cn.itcast.action.open"/>
<!-- 缺省的 -->
<category android:name="android.intent.category.DEFAULT"/>
<!-- 数据 android:scheme 是没有冒号 android:mimeType 格式:xx/yy-->
<data android:scheme="itcast" android:mimeType="xx/yy"/>
</intent-filter>
<intent-filter >
<action android:name="mm.gg.xx"/>
<action android:name="mm.gg.jj"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="cn.itcast.category.oo"/>
</intent-filter>
</activity>
传递对象:
//Activity之间传递对象
Intent intent = new Intent();
intent.putExtra();//参数可以是序列化对象,要实现序列化接口
Intent intent1 = getIntent();
intent1.getSerializableExtra("stu");