【实例简介】
【实例截图】
【核心代码】
package com.duduhali.Jpush;
import com.duduhali.flying.R;
import cn.jpush.android.api.CustomPushNotificationBuilder;
import cn.jpush.android.api.JPushInterface;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener{
Button bt_alias, bt_custom;
EditText et_alias;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt_alias = (Button) findViewById(R.id.bt_alias);
et_alias = (EditText) findViewById(R.id.et_alias);
bt_alias.setOnClickListener(this);
bt_custom = (Button) findViewById(R.id.bt_custom);
bt_custom.setOnClickListener(this);
}
/**设置自定义的推送通知栏布局*/
protected void setCustomPushNotification(){
CustomPushNotificationBuilder builder = new CustomPushNotificationBuilder(
MainActivity.this, R.layout.customer_notitfication_layout,
R.id.icon, R.id.title, R.id.text);
builder.layoutIconDrawable = R.drawable.push_ico;
//builder.statusBarDrawable = R.drawable.your_notification_icon; // 指定最顶层状态栏小图标
//builder.layoutIconDrawable = R.drawable.your_2_notification_icon; // 指定下拉状态栏时显示的通知图标
//开发者不自定义通知栏样式时,则此编号默认为 0.
//开发者自定义的通知栏样式编号应大于 0,小于 1000。
//JPushInterface.setPushNotificationBuilder(2, builder);//设置自定义通知栏样式,推送时设置要指定通知栏样式编号2
JPushInterface.setDefaultPushNotificationBuilder(builder);//设置默认(0)编号的样式
Toast.makeText(MainActivity.this, "已设置使用自定义通知栏", Toast.LENGTH_LONG).show();
}
// JPushInterface.stopPush(context.getApplicationContext());//停止推送
// JPushInterface.resumePush(context.getApplicationContext());//恢复推送
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch ( arg0.getId() ) {
case R.id.bt_alias:
// 设置别名,用来针对单个用户推送
JPushInterface.setAlias(MainActivity.this, et_alias.getText().toString(), null);
Toast.makeText(MainActivity.this, "success", Toast.LENGTH_LONG).show();
break;
case R.id.bt_custom:
setCustomPushNotification();
break;
default:
break;
}
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
JPushInterface.onPause(this);//不加此行调试模式下通知栏会有烦人的提示信息
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
JPushInterface.onResume(this);//不加此行调试模式下通知栏会有烦人的提示信息
}
}