diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 4c3cd5d..b0b93df 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,24 +3,22 @@ xmlns:tools="http://schemas.android.com/tools" package="com.example.cosmosclient"> - - - - - + + android:label="グループ作成" /> @@ -34,7 +32,7 @@ + tools:replace="screenOrientation" /> @@ -49,7 +47,7 @@ android:theme="@style/AppTheme.NoActionBar" /> + android:theme="@style/Base.Theme.AppCompat" /> @@ -70,8 +68,12 @@ - + android:theme="@style/AppTheme.NoActionBar"> + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java b/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java index b98a746..496e753 100644 --- a/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java +++ b/app/src/main/java/com/example/cosmosclient/entities/JoinGroupResponse.java @@ -1,11 +1,12 @@ package com.example.cosmosclient.entities; -import java.util.List; +import java.util.ArrayList; public class JoinGroupResponse { public String gId; - public String uId; - public String token; public String uri; + public String name; + public ArrayList members= new ArrayList<>(); + public ArrayList requests = new ArrayList<>(); } diff --git a/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java b/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java index 8472bfb..54d994b 100644 --- a/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java +++ b/app/src/main/java/com/example/cosmosclient/resources/JoinGroupRest.java @@ -13,6 +13,6 @@ public interface JoinGroupRest { @POST("groups/{gId}/members") @FormUrlEncoded - Call JoinGroup(@Path("gId") String gId, @Field("uId ") String uId , @Field("token ") String token); + Call JoinGroup(@Path("gId") String gId, @Field("uId") String uId , @Field("token") String token); } diff --git a/app/src/main/java/com/example/cosmosclient/views/AddMemberActivity.java b/app/src/main/java/com/example/cosmosclient/views/AddMemberActivity.java index 5ef1453..92cc9ec 100644 --- a/app/src/main/java/com/example/cosmosclient/views/AddMemberActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/AddMemberActivity.java @@ -19,8 +19,8 @@ public class AddMemberActivity extends AppCompatActivity implements AdapterView.OnItemClickListener { private static final String[] scenes = { - "QRコードで追加", - "IDで追加", + "QRコードで招待", + "IDで招待", "LINEで招待" }; @@ -64,11 +64,10 @@ if(selectedText.contains("QR")==true){ intent = new Intent(this.getApplicationContext(), DisplayQRActivity.class); }else if(selectedText.contains("ID")==true){ - intent = new Intent(this.getApplicationContext(), DisplayQRActivity.class); + intent = new Intent(this.getApplicationContext(), DisplayGroupIDActivity.class); }else{ // intent = new Intent(this.getApplicationContext(), DisplayQRActivity.class); - Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("line://msg/text/?GroupID")); - startActivity(i); + intent = new Intent(Intent.ACTION_VIEW, Uri.parse("line://msg/text/?GroupID")); } // Intent intent = new Intent(this.getApplicationContext(), DisplayQRActivity.class); diff --git a/app/src/main/java/com/example/cosmosclient/views/DisplayGroupIDActivity.java b/app/src/main/java/com/example/cosmosclient/views/DisplayGroupIDActivity.java new file mode 100644 index 0000000..09cc020 --- /dev/null +++ b/app/src/main/java/com/example/cosmosclient/views/DisplayGroupIDActivity.java @@ -0,0 +1,50 @@ +package com.example.cosmosclient.views; + +import android.content.ClipData; +import android.content.ClipboardManager; +import android.content.Context; +import android.os.Build; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.TextView; +import android.widget.Toast; + +import com.example.cosmosclient.R; +import com.example.cosmosclient.app.Cosmos; +import com.example.cosmosclient.entities.Group; + +public class DisplayGroupIDActivity extends AppCompatActivity { + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_display_group_id); + + EditText groupID = (EditText)findViewById(R.id.groupID); + // ボタンを設定 + Button copyButton = findViewById(R.id.copy_Button); + //読み取り専用にする設定 + groupID.setEnabled(false); +// //現在のグループ情報を格納しているものからgIdを取得 + Cosmos app = (Cosmos) getApplication(); + Group curentGroup = app.getCurentGroup(); +// //元となるgIdを取得完了 + final String gId = curentGroup.getgId(); +// final String gId = "vrehngortis"; + groupID.setText(gId); + + copyButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ClipboardManager clipboard + = (ClipboardManager) getSystemService( + Context.CLIPBOARD_SERVICE); + clipboard.setPrimaryClip(ClipData.newPlainText("", gId)); + } + }); + + } + +} diff --git a/app/src/main/java/com/example/cosmosclient/views/DisplayQRActivity.java b/app/src/main/java/com/example/cosmosclient/views/DisplayQRActivity.java index f02fa63..6daa9d1 100644 --- a/app/src/main/java/com/example/cosmosclient/views/DisplayQRActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/DisplayQRActivity.java @@ -19,14 +19,14 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_display_qr); -// //現在のグループ情報を格納しているものからgIdを取得 -// Cosmos app = (Cosmos) getApplication(); -// Group curentGroup = app.getCurentGroup(); -// //元となるgIdを取得完了 -// String data = curentGroup.getgId(); + //現在のグループ情報を格納しているものからgIdを取得 + Cosmos app = (Cosmos) getApplication(); + Group curentGroup = app.getCurentGroup(); + //元となるgIdを取得完了 + String data = curentGroup.getgId(); //テスト値 - String data = "http://researchers.adm.konan-u.ac.jp/html/130_ja.html"; +// String data = "http://researchers.adm.konan-u.ac.jp/html/130_ja.html"; //QRコード画像の大きさを指定(pixel) int size = 500; diff --git a/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java b/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java index df0f054..d6c8dda 100644 --- a/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/JoinGroupByIDActivity.java @@ -49,18 +49,17 @@ //* 必要値取得 *// //現在のグループ情報を格納しているものからuid,tokenを取得 -// Cosmos app = (Cosmos) getApplication(); - //元となるgId,uid,tokenを取得完了 -// String gId = GroupID; -// String uId=app.getuId(); -// String token=app.getToken(); + Cosmos app = (Cosmos) getApplication(); + //uid,tokenを取得完了 + final String uId=app.getuId(); + String token=app.getToken(); //テスト値 - String gId="qwer"; - String uId="asdf"; - String token="sggh"; + String gId=GroupID; +// String uId="asdf"; +// String token="sggh"; //API呼び出しのための値入力 - Call call = joinGroupService.JoinGroup(gId, uId, token); + final Call call = joinGroupService.JoinGroup(gId, uId, token); //サーバからデータ受け取り call.enqueue(new Callback() { @@ -68,24 +67,30 @@ @Override public void onResponse(Call call, Response response) { if (response.isSuccessful()) { -// JoinGroupResponse result = response.body(); - test.setText("成功"); - Cosmos app = (Cosmos) getApplication(); -// Intent intent = new Intent(getApplication(), GroupListActivity.class); + //成功時 + final JoinGroupResponse result = response.body(); + //追加ボタンに関する記述 + test.setText(result.name); + Button AddBtn = (Button)findViewById(R.id.Addbutton); + AddBtn.setVisibility(View.VISIBLE); - //test -// System.out.println(result.gId); -// System.out.println(result.uId); -// System.out.println(result.name); -// System.out.println(result.uri); -// System.out.println(result.token); -// System.out.println(result.iconUri); -// System.out.println(result.pw); + AddBtn.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Group g = new Group(result.gId, result.uri, result.name, uId); - //ここで成功の処理を記述 -// finish(); + //app/CosmosにgIdを保存 + Cosmos app = (Cosmos) getApplication(); + app.setCurrentGroup(g); - } else { + Intent intent = new Intent(getApplication(), RequestListActivity.class); + startActivity(intent); + finish(); + + } + }); + + }else { //onFailureでキャッチできないエラー用 //ここでエラーの処理を記述 test.setText("失敗"); diff --git a/app/src/main/java/com/example/cosmosclient/views/QRcodeReadingActivity.java b/app/src/main/java/com/example/cosmosclient/views/QRcodeReadingActivity.java index c49cee9..957fee5 100644 --- a/app/src/main/java/com/example/cosmosclient/views/QRcodeReadingActivity.java +++ b/app/src/main/java/com/example/cosmosclient/views/QRcodeReadingActivity.java @@ -5,12 +5,14 @@ import android.os.Bundle; import android.util.Log; import android.view.View; +import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; import com.example.cosmosclient.R; import com.example.cosmosclient.app.Cosmos; +import com.example.cosmosclient.entities.Group; import com.example.cosmosclient.entities.JoinGroupResponse; import com.example.cosmosclient.resources.JoinGroupRest; import com.google.zxing.integration.android.IntentIntegrator; @@ -49,7 +51,7 @@ final IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data); if(result != null) { QRcodeData = (String)result.getContents(); - QRcodeResult.setText(QRcodeData); +// QRcodeResult.setText(QRcodeData); } else { super.onActivityResult(requestCode, resultCode, data); } @@ -67,15 +69,15 @@ //* 必要値取得 *// //現在のグループ情報を格納しているものからuid,tokenを取得 -// Cosmos app = (Cosmos) getApplication(); + Cosmos app = (Cosmos) getApplication(); //元となるgId,uid,tokenを取得完了 -// String gId = (String)result.getContents(); -// String uId=app.getuId(); -// String token=app.getToken(); + String gId = (String)result.getContents(); + final String uId=app.getuId(); + String token=app.getToken(); - String gId="dnjewvhoirae"; - String uId="dnjewvhfgoirae"; - String token="dnjewvhoidgfrae"; +// String gId="dnjewvhoirae"; +// String uId="dnjewvhfgoirae"; +// String token="dnjewvhoidgfrae"; //API呼び出しのための値入力 Call call = joinGroupService.JoinGroup(gId, uId, token); @@ -86,21 +88,27 @@ @Override public void onResponse(Call call, Response response) { if (response.isSuccessful()) { - JoinGroupResponse result = response.body(); + //成功時 + final JoinGroupResponse result = response.body(); + QRcodeResult.setText(result.name); + Button AddBtn = (Button)findViewById(R.id.Addbutton); - Cosmos app = (Cosmos) getApplication(); - //test -// System.out.println(result.uId); -// System.out.println(result.name); -// System.out.println(result.uri); -// System.out.println(result.token); -// System.out.println(result.iconUri); -// System.out.println(result.pw); + AddBtn.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Group g = new Group(result.gId, result.uri, result.name, uId); - //ここで成功の処理を記述 - testtxt.setText("成功"); + //app/CosmosにgIdを保存 + Cosmos app = (Cosmos) getApplication(); + app.setCurrentGroup(g); - finish(); + Intent intent = new Intent(getApplication(), RequestListActivity.class); + startActivity(intent); + finish(); + + } + }); + } else { //onFailureでキャッチできないエラー用 diff --git a/app/src/main/res/layout/activity_add_member.xml b/app/src/main/res/layout/activity_add_member.xml index 7274a61..242f8aa 100644 --- a/app/src/main/res/layout/activity_add_member.xml +++ b/app/src/main/res/layout/activity_add_member.xml @@ -18,8 +18,8 @@ tools:layout_editor_absoluteX="0dp" /> + + + + + + +