08-16 17:37:37.694: ERROR/InputDispatcher(61): channel '40803d28 com.myApp.android/com.myApp.android.PickActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x8
08-16 17:37:37.694: ERROR/InputDispatcher(61): channel '40803d28 com.myApp.android/com.myApp.android.PickActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
कभी-कभी मुझे यह संदेश भी दिखाई देता है।यह कब होता है? और क्यों? एंड्रॉइड ऐप गतिविधि को बंद कर दिया जा रहा है 2.3.3 एम्यूलेटर त्रुटि
08-16 17:44:21.092: ERROR/InputDispatcher(61): Received spurious receive callback for unknown input channel. fd=177, events=0x8
तो यह केवल केवल 2.3.3 एमुलेटर में और पर नहीं 3.0 या 2.2 या किसी अन्य emulators मैं पर परीक्षण किया है होता है और यहां तक कि मेरी Froyo Droid अतुल्य असली डिवाइस पर अच्छा काम करता है। कोई त्रुटि नहीं है।
जब भी मैं 2.3.3 एमुलेटर में ऐप की मुख्य गतिविधि खोलता हूं, तो 5-7 सेकेंड की तरह थोड़ा सा हमेशा मुझे लॉग संदेश दिखाई देता है और गतिविधि बंद हो जाती है। मुझे यकीन नहीं है कि इसका क्या अर्थ है। मैंने पहले इसे कभी नहीं देखा है।
यहां गतिविधि के कुछ कोड स्निपेट हैं। यह ऐप की मुख्य गतिविधि है जो ऐप में लॉग इन होने पर उपयोगकर्ता को प्रदर्शित होती है और फिर वे 4 आइकनों से चुन सकते हैं जो उनकी संबंधित गतिविधियों को लॉन्च करते हैं।
इसके अलावा मुझे लगता है कि इस गतिविधि में एक मिलेनियलमीडिया बैनर विज्ञापन नीचे है जो एक बार फिर विज्ञापन प्राप्त करता है और अन्य सभी अनुकरणकर्ताओं और उपकरणों में ठीक काम करता है।
सार्वजनिक वर्ग PickActivity फैली गतिविधि को लागू करता है OnClickListener, MMAdListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFormat(PixelFormat.RGBA_8888);
setContentView(R.layout.main);
// Instantiate shared preferences
mAppPreferences = PreferenceManager.getDefaultSharedPreferences(this);
mEditor = mAppPreferences.edit();
// Instantiate the views
setupViews();
Hashtable<String, String> map = new Hashtable<String, String>();
map.put("keywords", "shopping,deals,money,coupons,sports");
//include additional metadata or settings in the hashmap
MMAdView adView = new MMAdView(this, MYAPID, MMAdView.BANNER_AD_BOTTOM, 30, map);
adView.setId(123);
FrameLayout adFrameLayout = (FrameLayout)findViewById(R.id.mm_layout);
LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);
adFrameLayout.addView(adView, lp);
}
तब मैं onStart, onStop और onResume लागू किया है।
यहाँ setupViews विधि
private void setupViews() {
yourA = (ImageButton)findViewById(R.id.MA);
yourA.setOnClickListener(this);
yourC = (ImageButton)findViewById(R.id.MC);
yourC.setOnClickListener(this);
yourM = (ImageButton)findViewById(R.id.MM);
yourM.setOnClickListener(this);
yourS = (ImageButton)findViewById(R.id.MS);
yourS.setOnClickListener(this);
//Action bar Help button
helpButton = (ImageButton)findViewById(R.id.ActionHelpButton);
helpButton.setOnClickListener(this);
// Action bar Video button
videoButton = (ImageButton)findViewById(R.id.ActionVideoButton);
videoButton.setVisibility(View.VISIBLE);
videoButton.setOnClickListener(this);
// Footer marquee TextView
footerText = (TextView) findViewById(R.id.FooterMarquee);
}
मैं भी लॉग संदेश के साथ कक्षा में MMAdListener डिफ़ॉल्ट तरीकों को शामिल किया है है।
कृपया मुझे यह जानने में सहायता करें कि यह केवल 2.3.3 एमुलेटर में क्यों हो रहा है और गतिविधि बंद हो गई है।
आपकी मदद के लिए धन्यवाद।
इसलिए मैंने श्रोता को टिप्पणी की और गतिविधि से पूरी तरह से विज्ञापन दृश्य को हटा दिया। यह फिर से होता है। मैं वास्तव में 2.3.3 चल रहे एक वास्तविक एंड्रॉइड डिवाइस पर इस चीज़ का परीक्षण करना चाहता हूं। – Aakash
दुर्भाग्यवश, कभी-कभी आपके पास एमुलेटर सीमाएं होती हैं। क्या आपने एमुलेटर को हटाने और पुनर्निर्माण करने का प्रयास किया था? – Codeman
ओह हाँ मैं इसका उल्लेख करना भूल गया! इस 2.3.3 एवीडी के लिए मरम्मत बटन एवीडी प्रबंधक में अक्षम है लेकिन मैंने इसे हटा दिया और इसे फिर से बनाया। अभी भी एक ही मुद्दा। – Aakash