quargljhh

This commit is contained in:
2018-09-23 16:23:49 +02:00
parent a4cc8752ff
commit 63633de256
26 changed files with 956 additions and 52 deletions

View File

@@ -1,35 +0,0 @@
package com.blackforestbytes.simplecloudnotifier;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.View;
import com.google.android.gms.tasks.OnSuccessListener;
import com.google.firebase.iid.FirebaseInstanceId;
import com.google.firebase.iid.InstanceIdResult;
public class MainActivity extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RecyclerView rvMessages = findViewById(R.id.rvMessages);
rvMessages.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, true));
rvMessages.setAdapter(new MessageAdapter());
SCNApp.register(this);
}
@Override
protected void onStop()
{
super.onStop();
CMessageList.inst().fullSave();
}
}

View File

@@ -4,6 +4,8 @@ import android.app.Application;
import android.content.Context;
import android.widget.Toast;
import com.blackforestbytes.simplecloudnotifier.view.MainActivity;
import java.lang.ref.WeakReference;
public class SCNApp extends Application

View File

@@ -1,4 +1,4 @@
package com.blackforestbytes.simplecloudnotifier;
package com.blackforestbytes.simplecloudnotifier.model;
import android.annotation.SuppressLint;

View File

@@ -1,9 +1,11 @@
package com.blackforestbytes.simplecloudnotifier;
package com.blackforestbytes.simplecloudnotifier.model;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import com.blackforestbytes.simplecloudnotifier.view.MessageAdapter;
import com.blackforestbytes.simplecloudnotifier.SCNApp;
import java.lang.ref.WeakReference;
import java.util.ArrayList;

View File

@@ -1,8 +1,10 @@
package com.blackforestbytes.simplecloudnotifier;
package com.blackforestbytes.simplecloudnotifier.service;
import android.util.Log;
import android.widget.Toast;
import com.blackforestbytes.simplecloudnotifier.SCNApp;
import com.blackforestbytes.simplecloudnotifier.model.CMessageList;
import com.google.firebase.messaging.FirebaseMessagingService;
import com.google.firebase.messaging.RemoteMessage;

View File

@@ -0,0 +1,25 @@
package com.blackforestbytes.simplecloudnotifier.view;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.blackforestbytes.simplecloudnotifier.R;
public class AccountFragment extends Fragment
{
public AccountFragment()
{
// Required empty public constructor
}
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
return inflater.inflate(R.layout.fragment_account, container, false);
}
}

View File

@@ -0,0 +1,48 @@
package com.blackforestbytes.simplecloudnotifier.view;
import android.support.design.widget.TabLayout;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import com.blackforestbytes.simplecloudnotifier.R;
import com.blackforestbytes.simplecloudnotifier.SCNApp;
import com.blackforestbytes.simplecloudnotifier.model.CMessageList;
public class MainActivity extends AppCompatActivity
{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
TabLayout tabLayout = findViewById(R.id.tab_layout);
tabLayout.addTab(tabLayout.newTab().setText("Notifications"));
tabLayout.addTab(tabLayout.newTab().setText("Account"));
tabLayout.addTab(tabLayout.newTab().setText("Settings"));
tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);
final ViewPager viewPager = findViewById(R.id.pager);
final PagerAdapter adapter = new TabAdapter(getSupportFragmentManager());
viewPager.setAdapter(adapter);
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
SCNApp.register(this);
}
@Override
protected void onStop()
{
super.onStop();
CMessageList.inst().fullSave();
}
}

View File

@@ -1,4 +1,4 @@
package com.blackforestbytes.simplecloudnotifier;
package com.blackforestbytes.simplecloudnotifier.view;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
@@ -8,6 +8,11 @@ import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;
import com.blackforestbytes.simplecloudnotifier.R;
import com.blackforestbytes.simplecloudnotifier.SCNApp;
import com.blackforestbytes.simplecloudnotifier.model.CMessage;
import com.blackforestbytes.simplecloudnotifier.model.CMessageList;
public class MessageAdapter extends RecyclerView.Adapter
{
public MessageAdapter()

View File

@@ -0,0 +1,34 @@
package com.blackforestbytes.simplecloudnotifier.view;
import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.blackforestbytes.simplecloudnotifier.R;
public class NotificationsFragment extends Fragment
{
public NotificationsFragment()
{
// Required empty public constructor
}
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View v = inflater.inflate(R.layout.fragment_notifications, container, false);
RecyclerView rvMessages = v.findViewById(R.id.rvMessages);
rvMessages.setLayoutManager(new LinearLayoutManager(this.getContext(), RecyclerView.VERTICAL, true));
rvMessages.setAdapter(new MessageAdapter());
return v;
}
}

View File

@@ -0,0 +1,30 @@
package com.blackforestbytes.simplecloudnotifier.view;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.blackforestbytes.simplecloudnotifier.R;
/**
* A simple {@link Fragment} subclass.
*/
public class SettingsFragment extends Fragment {
public SettingsFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_settings, container, false);
}
}

View File

@@ -0,0 +1,33 @@
package com.blackforestbytes.simplecloudnotifier.view;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
public class TabAdapter extends FragmentStatePagerAdapter {
public TabAdapter(FragmentManager fm)
{
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
return new NotificationsFragment();
case 1:
return new AccountFragment();
case 2:
return new SettingsFragment();
default:
return null;
}
}
@Override
public int getCount() {
return 3;
}
}