背景:我曾尝试在 stackoverflow、android 开发人员和网络上的各种其他资源方面寻求帮助。这是我最后的希望。我是通信新手,从 USB 的实现开始。以下是我的问题:
1) 当我将手机连接到 Windows PC 时,哪一个是主机?假设我想创建一个可以发送数据的应用程序,我是在做我的手机主机吗?
2) 对于这种情况(Windows PC 和 Android 手机),另一个是外围设备还是设备?他们一样吗?
3)从android开发者网站和关于USB的Windows论坛,我了解到需要遵循某些步骤,就像 - 创建USBManager的实例。- 创建获取设备列表 - 选择要从中建立连接的设备 - 创建接口 - 从该接口获取端点。- 创建 DeviceConnections 实例并调用 bulkTransfer 方法并发送数据。
但是当我尝试上述步骤时,我得到 device == null。我什至不知道我对上述通信方式的理解是否正确。
有人可以帮助我理解并建立 PC 和 android 手机之间的基本通信,并至少发送“hello world”。
非常感谢您阅读这么长的问题。
这是我所做的代码示例。这里 devicelist 返回 null。
public class MainActivity extends AppCompatActivity {
android.widget.Button usbButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final CustomUSBManager cmanager = new CustomUSBManager();
//1) //Create instance of USB Manager using getSystemService
final UsbManager manager = …Run Code Online (Sandbox Code Playgroud) 我一直读到私有构造函数会阻止对象创建。我在单例模式中使用过它们,我知道如何在使用私有构造函数(使用静态方法等)时创建对象。我知道构造函数用于对象的初始化。
但我不明白是什么让私有构造函数阻止对象创建。如果我的对象没有被初始化怎么办。我的意思是它应该扔一些垃圾但为什么它会限制?
我已经检查了 stackoverflow 中的所有现有答案,但我没有得到确切的概念。