অ্যান্ড্রয়েড: আমি কীভাবে গ্রহপী কনসোলে একটি পরিবর্তনশীল মুদ্রণ করতে পারি


91

আমি আমার ডিবাগিং উদ্দেশ্যে কনসোলে একটি ভেরিয়েবলের মান মুদ্রণ করতে চেয়েছিলাম কিন্তু system.out.println কাজ করে না।


উত্তর:


117

System.out.printlnএবং Log.dউভয়ই কনসোল নয়, লগগিকেটে যান।


4
LibGDX এবং System.out.println ব্যবহার করে কনসোল যায়। এটি লগকটে প্রবেশের জন্য এমন কোনও উপায়ের সন্ধান করছে যাতে আমি আমার অ্যাপ্লিকেশনটিকে আসল ডিভাইসে লগ / ডিবাগ করতে পারি।
ম্যাডমিনিও

26

উইন্ডো-> প্রদর্শন দেখুন-> অন্যান্য… -> অ্যান্ড্রয়েড-> লগগ্যাট


6

আমি অ্যান্ড্রয়েড বিকাশে নতুন এবং আমি এটি করি:

1) একটি শ্রেণী তৈরি করুন:

আমদানি android.util.Log;

পাবলিক ফাইনাল ক্লাস ডিবাগ {
    ব্যক্তিগত ডিবাগ () {}

    সার্বজনীন স্থির শূন্যতা (অবজেক্টের নাম)
        লগ.আই ("তথ্য", msg.to স্ট্রিং ());
    }
}

আপনি প্রকল্প শেষ হলে ক্লাস মুছুন।

2) লগগ্যাট লিখিত বার্তায় মুদ্রণ করতে:

Debug.out ("something");

3) লগগিকেটে একটি ফিল্টার তৈরি করুন এবং ইনপুটটিতে "লগ ট্যাগ দ্বারা" "তথ্য" লিখুন। আপনার সমস্ত বার্তা এখানে লেখা হবে। :)

টিপ: সহজেই ডিবাগ করতে সমস্ত ত্রুটি ফিল্টার করতে অন্য ফিল্টার তৈরি করুন।


8
এই জাতীয় কোড লেখা ভাল ধারণা নয় কারণ লগ ক্লাসটি বেশিরভাগ ... সমস্ত অ্যান্ড্রয়েড বিকাশকারীদের কাছে পরিচিত। এটিকে আপনার নিজের ক্লাসে গুটিয়ে রেখে এবং নতুন কার্যকারিতা যুক্ত না করে আপনি যা করেন তা হ'ল আপনার কোডের অর্থ নিজেকে বাদ দিয়ে অন্য লোকের কাছে অস্পষ্ট করে দেওয়া।
টমাস ডিগানান

6

লগগ্যাট-এ যে কোনও কিছু মুদ্রণের জন্য অনুসরণ কোডটি লেখা পুরোপুরি সূক্ষ্মভাবে কাজ করে !!

int score=0;
score++;
System.out.println(score);

লগগেটে স্কোর প্রিন্ট করুন T এটি ব্যবহার করে দেখুন


3

আমি ভেবেছি টোস্টটি ভেরিয়েবলের মান দেখানোর জন্য একটি ভাল পদ্ধতি হতে পারে!


4
টোস্টের সাথে সমস্যাটি আসে যখন মানগুলি অনেকগুলি এবং দ্রুত হয়, যেমন কুঠার মত, Y ACTION_MOVE এ লগইন পরিচালনা করে। এই জাতীয় ক্ষেত্রে একটি স্ক্রীন পাঠ্য বা লগ আউটপুট আরও ভাল সমাধান হতে পারে।
টেকনিকুইস্ট

1

ঠিক আছে, টোস্ট কোনও জটিল নয় তবে এটি কাজ করার জন্য একটি প্রসঙ্গ বিষয় প্রয়োজন, এটি হতে পারে MyActivity.thisতবে আপনি লিখতে পারেন:

Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();

যদিও টোস্ট হ'ল একটি ইউআই রিসোর্স, তারপরে এটি অন্য থ্রেডে ইউআই থ্রেডের চেয়ে আলাদা ব্যবহার করে ত্রুটি প্রেরণ করবে বা সহজভাবে কাজ করবে না আপনি যদি কোনও ভেরিয়েবল মুদ্রণ করতে চান তবে ভেরিয়েবলটি name.toString()এবং কাঠামোটি লিখুন যা আপনি মেকটেক্সট স্ট্রিং প্যারামিটারে পাঠ্য সহ চান; )


0

টোস্ট একটি খারাপ ধারণা, একটি ভেরিয়েবলের মান প্রিন্ট করা এটি খুব "জটিল"। লগ বা সোপ ব্যবহার করুন এবং ড্রোনওয়ার্ড ইতিমধ্যে বলেছে যে, তাদের আউটপুট লগকটে যায়। এটি কেবল তখনই বোধগম্য হয় যদি আপনি এই তথ্যটি শেষ-ব্যবহারকারীর কাছে প্রকাশ করতে চান ...


0

আপনি যে কোডটি পরীক্ষা করছেন তা যদি তুলনামূলকভাবে সহজ হয় তবে আপনি কেবল প্যাকেজ এক্সপ্লোরারে একটি নিয়মিত জাভা প্রকল্প তৈরি করতে পারেন এবং কোডটি জুড়ে অনুলিপি করতে পারেন, এটি চালনা করতে এবং সেখানে ঠিক করতে পারেন, তারপরে এটিকে আবার আপনার অ্যান্ড্রয়েড প্রকল্পে অনুলিপি করুন।

সিস্টেম.আউটকে পুনঃনির্দেশিত করা হয়েছে তা সহজেই সহজ পদ্ধতিগুলির পরীক্ষা করার জন্য খুব বিরক্তিকর, তবে এটিই আমি খুঁজে পেয়েছি সবচেয়ে সহজ সমাধান, কেবল নিয়মিত এক্সপ্রেশন কাজ করে কিনা তা দেখার জন্য ডিভাইস এমুলেটরটি চালানোর চেয়ে than


0

যাইহোক, আপনি যদি জানেন না যে আপনার JSONObject এর সঠিক অবস্থানটি আপনার JSONArray এর ভিতরে রয়েছে তবে আমি নিম্নলিখিত কোডটি ব্যবহার করার পরামর্শ দিই: (আমি ধরে নিয়েছি যে "jsonArray" সমস্ত ডেটা সহ আপনার মূল পরিবর্তনশীল, এবং আমি সঠিকটি অনুসন্ধান করছি) সমান ফাংশন সহ অ্যারের ভিতরে অবজেক্ট)

    JSONArray list = new JSONArray(); 
    if (jsonArray != null){
        int len = jsonArray.length();
        for (int i=0;i<len;i++)
        { 
            boolean flag;
            try {
                flag = jsonArray.get(i).toString().equals(obj.toString());
                //Excluding the item at position
                if (!flag) 
                {
                    list.put(jsonArray.get(i));
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }  
        } 
    }
    jsonArray = list;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.