質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.48%

  • Java

    16120questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • Android

    7387questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

アンドロイドでの通信のエラー

受付中

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 659
退会済みユーザー

退会済みユーザー

アンドロイドアプリで通信のエラーが出ました。
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) のエラーが大量に出ています。
以下のように記載しています。

package ;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Fragment;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.graphics.RectF;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.TextView;


import me.myreco.up.LoginApi.Login;
import me.myreco.up.LoginApi.LoginResult;
import me.myreco.up.LoginApi.LoginApi;
import me.myreco.up.UserInfoApi.UserInfo;
import me.myreco.up.UserInfoApi.UserInfoApi;

import me.myreco.up.R;
import retrofit2.Callback;
import retrofit2.Call;
import retrofit2.Response;

import com.google.firebase.analytics.FirebaseAnalytics;
import com.google.gson.internal.ObjectConstructor;

/**
 * Created by hasuikeyuri on 2016/07/08.
 */
public class EdditingProfileActivity extends Activity {


    private Bitmap bitmap;
    private EditText mailEdit;
    private EditText passEdit;
    private EditText usernametext;
    private EditText introductiontext;
    private EditText areatext;
    private EditText birthdaytext;
    private EditText sextext;
    private EditText twittertext;
    private EditText facebooktext;
    private ImageButton icon;
    private UserInfoApi userInfoApi;
    private TextView privacy_link, terms_link, forgotten_link, user_regist;
    private static final int USER_REGIST = 1;
    private com.google.firebase.analytics.FirebaseAnalytics FirebaseAnalytics;


    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.edittingprofile);

        FirebaseAnalytics = FirebaseAnalytics.getInstance(this);
        FirebaseAnalytics.logEvent("LoginFragment", null);


        mailEdit = (EditText) findViewById(R.id.editingusername);
        usernametext = (EditText) findViewById(R.id.editingmail);
        passEdit = (EditText) findViewById(R.id.editingpass);
        introductiontext = (EditText) findViewById(R.id.editingintro);
        areatext = (EditText)findViewById(R.id.editingarea);
        birthdaytext = (EditText) findViewById(R.id.editingbirthday);
        sextext = (EditText) findViewById(R.id.editingsex);
        twittertext = (EditText) findViewById(R.id.editingtwitter);
        facebooktext = (EditText) findViewById(R.id.editingfacebook);
        icon = (ImageButton) findViewById(R.id.icon);

        View.OnTouchListener focus_listener = new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                v.requestFocusFromTouch();
                return false;
            }
        };

        mailEdit.setOnTouchListener(focus_listener);

        passEdit.setOnTouchListener(focus_listener);

        usernametext.setOnTouchListener(focus_listener);

        introductiontext.setOnTouchListener(focus_listener);

        areatext.setOnTouchListener(focus_listener);

        birthdaytext.setOnTouchListener(focus_listener);

        sextext.setOnTouchListener(focus_listener);

        twittertext.setOnTouchListener(focus_listener);

        facebooktext.setOnTouchListener(focus_listener);

        SavePreference savePreference = new SavePreference();
        String aToken = savePreference.load_aToken(getApplicationContext());

    UserInfoApi api = ServiceGenerator.createService(UserInfoApi.class,aToken);

    Call<UserInfo> call = api.getUserInfo();

    call.enqueue(new Callback<UserInfo>()
    {

        public void onResponse(Call<UserInfo> call, Response<UserInfo> UserInfoResponse){
        String email = UserInfoResponse.body().getEmail();
        Integer id = UserInfoResponse.body().getId();
        String username = UserInfoResponse.body().getUsername();
        Object area = UserInfoResponse.body().getArea();
        String bio = UserInfoResponse.body().getAttribute();
        String sex = UserInfoResponse.body().getSex();
        Object birthday = UserInfoResponse.body().getBirthday() ;
        ImageButton icon = UserInfoResponse.body().getIcon();


     mailEdit.setText(email);

     passEdit.setText(String.valueOf(id));
           if (username !=null) {
               usernametext.setText(String.valueOf(username));
           }
            if (area !=null) {
                areatext.setText(String.valueOf(area));
            }
            if (area !=null) {
                areatext.setText(String.valueOf(area));
            }
            if (bio !=null) {
                introductiontext.setText(String.valueOf(bio));
            }
            if (sex !=null) {
                sextext.setText(String.valueOf(sex));
            }
            if (birthday !=null) {
                birthdaytext.setText(String.valueOf(birthday));
            }
            if (icon !=null) {
                icon= (ImageButton) findViewById(R.id.icon);
                final  ImageButton finalIcon = icon;
               icon.setOnClickListener(new View.OnClickListener(){
                   public void onClick(View v){

                        bitmap = RadiusImage(bitmap);
                       finalIcon.setImageDrawable(null);
                        finalIcon.setImageBitmap(bitmap);
                    }
                });


            }
            else {


            }}

        public void onFailure(Call<UserInfo> call, Throwable t) {
            new AlertDialog.Builder(getApplicationContext())
                    .setTitle("失敗しました")
                    .setMessage("")
                    .setPositiveButton("OK", null)
                    .show();

        }



    });}
        public Bitmap RadiusImage(Bitmap bm){
            int width  = bm.getWidth();
            int height = bm.getHeight();
            int size = Math.min(width, height);
            Bitmap clipArea = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
            Canvas c = new Canvas(clipArea);
            c.drawRoundRect(new RectF(0, 0, size, size), size, size, new Paint(Paint.ANTI_ALIAS_FLAG));
            Bitmap newImage = Bitmap.createBitmap(size, size, Bitmap.Config.ARGB_8888);
            Canvas canvas = new Canvas(newImage);
            Paint paint = new Paint();
            canvas.drawBitmap(clipArea, 0, 0, paint);
            paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
            canvas.drawBitmap(bm, new Rect(0, 0, size, size), new Rect(0, 0, size, size), paint);
            return newImage;
        }

   }

Call<UserInfo> call = api.getUserInfo();〜public void onFailure(Call<UserInfo> call, Throwable t)
のところがおかしいみたいです。
どこがまちがっているかご指摘お願いします。

エミュレーターを起動させ、動作をさせると、Android MoniterにToo much process! と出ます。
そこを扱っているアクティビティにimport com.google.gson.internal.ObjectConstructor;と記載してはいますが、インポートはしていません。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

0

08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 
08-06 19:26:46.002 21978-21978/ W/art:     at com.google.gson.internal.$Gson$Types.canonicalize($Gson$Types.java:111) 

というように同じメッセージが続いているならそれは無限ループです。

エラーろぐがあるばあいは Exception / Error の表示のある行を入れましょう

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/08/07 11:36

    ありがとうございます。情報を追加しました。同じメッセージが続いています。

    キャンセル

0

GSONを使っているところに問題がありそうです。

使っているところのコードを追記してください。
あと、タグにAndroidを追加してください。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

同じタグがついた質問を見る

  • Java

    16120questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • Android

    7387questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。