我想测试关于usb设备的一些东西,我尝试编写一个小程序,我确信这是错误的,但这不是这个问题的重点。 我确信我的导入没问题,但Android Studio拒绝使用GetSystemService()的错误构建此类。我有消息:
错误:(65,43)错误:找不到符号方法getSystemService(String)。
我还使用了来自http://android-er.blogspot.de/2013/10/list-attached-usb-devices-in-usb-host.html的示例,Android Studio也有同样的错误但是如果我从这个网站安装Apk然后它在我的设备上运行,所以我认为Android Studio出了问题。 有什么好主意吗?
OFFTOPIC" QT Creator光年更好"
import android.content.Context;
import android.hardware.usb.UsbManager;
import android.hardware.usb.UsbAccessory;
import android.os.ParcelFileDescriptor;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileDescriptor;
import android.util.Log;
public class DeviceOpenActivity {
private static final String TAG = "DeviceOpenActivity";
UsbManager usbManager = (UsbManager) getSystemService(Context.USB_SERVICE);
UsbAccessory mAccessory;
ParcelFileDescriptor mFileDescriptor;
FileInputStream mInputStream;
FileOutputStream mOutputStream;
public static int fibonacci(int n) {
if (n<2) return n;
return fibonacci(n-1) + fibonacci(n-2);
}
private void openAccessory() {
Log.d(TAG, "openAccessory: " + mAccessory);
mFileDescriptor = usbManager.openAccessory(mAccessory);
if (mFileDescriptor != null) {
FileDescriptor fd = mFileDescriptor.getFileDescriptor();
mInputStream = new FileInputStream(fd);
mOutputStream = new FileOutputStream(fd);
}
}
}
答案 0 :(得分:2)
如果检查您提供的示例,您将验证是否存在扩展MainActivity
类的Activity
类,该类又从Context间接扩展。要致电getSystemService()
,您需要提供Context
。如果您进行DeviceOpenActivity
延长Activity
,Android Studio将不再抱怨您的通话。
请保留您的课堂声明:
public class MainActivity extends Activity
不要忘记,您需要为Activity
以及Activity
方法提供XML布局,例如onCreate()
。