이에 뉴스를 추가 할 때 자동으로 푸시 알림을 보낼 수있는 방법이된다 화재베이스난 내 중포 기지
public class newsadding extends AppCompatActivity {
FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference myRef = database.getReference("allNews");
EditText date, name;
Button btsave, btdelete, btshow;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_newsadding);
date =(EditText) findViewById(R.id.id);
name =(EditText) findViewById(R.id.editName);
btsave = (Button) findViewById(R.id.btSave);
btdelete = (Button) findViewById(R.id.btDelete);
btshow = (Button) findViewById(R.id.btShow);
// save the record
btsave.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String n = date.getText().toString();
String nom = name.getText().toString();
try {
myRef.child("allNews").push().setValue(n+" : "+nom);
Toast.makeText(newsadding.this, "Record saved", Toast.LENGTH_SHORT).show();
}
catch (Exception e)
{
Toast.makeText(newsadding.this, "Record not saved" + e.toString(), Toast.LENGTH_SHORT).show();
}
}
});
// delete a record
btdelete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
try {
String n = date.getText().toString();
String q = database.getReference().toString();
Toast.makeText(newsadding.this, "record deleted", Toast.LENGTH_SHORT).show();
}
catch (Exception ex) {
Toast.makeText(newsadding.this, ex.getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
// show all records
btshow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i1 = new Intent(newsadding.this, usernews.class);
startActivity(i1);
}
});
}
}
에 뉴스를 추가하는 데 사용이 사용하는 파일입니다 자바 파일
public class usernews extends AppCompatActivity {
FirebaseDatabase database = FirebaseDatabase.getInstance();
final DatabaseReference myRef = database.getReference("allNews").child("allNews");
TextView fullnews;
ProgressBar loading;
private ListView lsStudents;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_usernews);
loading = (ProgressBar) findViewById(R.id.loading);
lsStudents=(ListView) findViewById(R.id.list);
fullnews=(TextView) findViewById(R.id.fullnews);
fullnews.setVisibility(View.INVISIBLE);
Toast.makeText(usernews.this,
"يرجى التأكد من أنك متصل بالإنترنت إذالم تكن متصل بعد...", Toast.LENGTH_LONG).show();
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
// This method is called once with the initial value and again
// whenever data at this location is updated.
final List<String> areas = new ArrayList<String>();
for (DataSnapshot areaSnapshot: dataSnapshot.getChildren()) {
// Get value from areaSnapShot not from dataSnapshot
String value1 = String.valueOf(areaSnapshot.getValue());
areas.add(value1);
if (lsStudents.equals(null)){
loading.setVisibility(View.VISIBLE);
}
if (!lsStudents.equals(null)){
loading.setVisibility(View.GONE);
}
}
String value2 = String.valueOf(dataSnapshot.getValue());
ArrayList<String> areas2 = new ArrayList<String>(areas);
Collections.reverse(areas2);
ArrayAdapter<String> areasAdapter = new ArrayAdapter<String>(usernews.this,android.R.layout.simple_expandable_list_item_1, areas);
lsStudents.setAdapter(areasAdapter);
lsStudents.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter, View view, int position, long arg) {
fullnews.setVisibility(View.VISIBLE);
String newss = (lsStudents.getItemAtPosition(position).toString());
fullnews.setText(newss);
}
});
}
@Override
public void onCancelled(DatabaseError error) {
// Failed to read value
Toast.makeText(usernews.this,
error + "!!!!!خطاء في الاتصال !!!!!!", Toast.LENGTH_LONG).show();
}
});
}
}
지금 난 당신이 불 기본 페이지에 알림 표시 줄에서 화재베이스에서 정보를 보낼 수 있지만 수동 때문에 정보를 추가하지 않으려는 것을 알고 목록보기의 정보를 표시합니다 내 애플 리케이션에서 내 페이지는 뉴스에 대한 그리고 난 항상 수동으로 그것을 할 수 없다 b 나는 그 뉴스를 추가하는 유일한 사람이 아니므로 메시지 사운드가있는 배경에 새로운 뉴스와 응용 프로그램 이름 및 로고가 표시된 간단한 바를 표시하는 앱이 필요합니다. 어느 누구도 도움이 될 수 있습니까?
사용자는 뉴스를 올리면 사용자 장치에서 직접 알림을 보낼 수 있습니다. –
예, 나는이 방법으로 생각합니다. OnButtonClick을 사용하여 메시지가 보내지는 뉴스 추가 단추를 사용하지만 문제는 어떻게 수행해야할지 모릅니다. – Ali
http://stackoverflow.com/questions/38089148/send-push-notification-from-server-to-android-device-in-java –