प्राप्त करने में विफल रहा है, मैं अपने ऐप में ब्लूटूथ का उपयोग कर समस्या में भाग रहा हूं। ऐसा लगता है कि 28 BluetoothSocket
/BluetoothServerSockets
के बाद बनाया गया है, सभी बंदरगाहों को लिया जाता है। सॉकेट को एक साथ खोले जाने की आवश्यकता नहीं है, ब्लूटूथ सक्षम होने के बाद से केवल 28 सॉकेट हैं।एंड्रॉइड: ब्लूटूथ पोर्ट नंबर
इसे Android Samples में प्रदान किए गए ब्लूटूथकैट नमूने का उपयोग करके पुन: उत्पन्न किया जा सकता है। बस ऐप को 15 बार खोलें और बंद करें (ऐप हर बार 2 सॉकेट बनाता है)। 15 वीं समय पर, यह दुर्घटना होगा और और दोबारा सक्षम नहीं ब्लूटूथ जब तक आप को निष्क्रिय दुर्घटना के लिए जारी रहेगा तो:
12-06 18:43:58.177: E/BluetoothSocket(18530): bindListen, fail to get port number, exception: java.io.IOException: read failed, socket might closed, read ret: -1
12-06 18:43:58.193: E/BluetoothChatService(18530): Socket Type: Insecurelisten() failed
12-06 18:43:58.193: E/BluetoothChatService(18530): java.io.IOException: Error: -1
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.bluetooth.BluetoothAdapter.createNewRfcommSocketAndRecord(BluetoothAdapter.java:1035)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.bluetooth.BluetoothAdapter.listenUsingInsecureRfcommWithServiceRecord(BluetoothAdapter.java:982)
12-06 18:43:58.193: E/BluetoothChatService(18530): at com.example.android.BluetoothChat.BluetoothChatService$AcceptThread.<init>(BluetoothChatService.java:280)
12-06 18:43:58.193: E/BluetoothChatService(18530): at com.example.android.BluetoothChat.BluetoothChatService.start(BluetoothChatService.java:119)
12-06 18:43:58.193: E/BluetoothChatService(18530): at com.example.android.BluetoothChat.BluetoothChat.onResume(BluetoothChat.java:131)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1185)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.Activity.performResume(Activity.java:5182)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2732)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2771)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2235)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread.access$600(ActivityThread.java:141)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.os.Handler.dispatchMessage(Handler.java:99)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.os.Looper.loop(Looper.java:137)
12-06 18:43:58.193: E/BluetoothChatService(18530): at android.app.ActivityThread.main(ActivityThread.java:5039)
12-06 18:43:58.193: E/BluetoothChatService(18530): at java.lang.reflect.Method.invokeNative(Native Method)
12-06 18:43:58.193: E/BluetoothChatService(18530): at java.lang.reflect.Method.invoke(Method.java:511)
12-06 18:43:58.193: E/BluetoothChatService(18530): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
12-06 18:43:58.193: E/BluetoothChatService(18530): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
12-06 18:43:58.193: E/BluetoothChatService(18530): at dalvik.system.NativeStart.main(Native Method)
वहाँ के बाद सॉकेट बंद कर दिया है बंदरगाहों को मुक्त करने के कोई तरीका है?
एक नज़र डालने के लिए धन्यवाद! मैंने यहां एक बग दायर किया है: [# 41110] (http://code.google.com/p/android/issues/detail?id=41110)। मेरे गैलेक्सी नेक्सस और मेरे नेक्सस 7 पर 4.2.1 चल रहे ऐप को क्रैश करने में 15 बार लग गए। मेरा नेक्सस वन कभी दुर्घटनाग्रस्त नहीं हुआ, इसलिए उम्मीद है कि यह केवल एक जेबी मुद्दा है। – mattprecious