Zxing在Android:Eclipse

gca*_*ats 5 android

这就是我想要做的.

我想用Zxing创建一个新的QR码阅读器.

我下载了什么.

Eclipse SDK Classic版本:3.7.0; Android SDK(包含SDK Tools rev12,以及所有SDK平台,API和示例; Eclipse中的ADT插件(我可以在列表中看到所有API的目标:1.5-3.2和Google API); Zxing 1.7.

使用.Windows 7 32位.

我的环境变量是什么?

ANT_HOME, at (...)\apache-ant-1.8.2
JAVA_HOME, at (...)\jdk1.7.0
PATH, at (...)\jdk1.7.0\bin
Run Code Online (Sandbox Code Playgroud)

我做了什么.

将Zxing 1.7提取到zxing文件夹,使用cmd成功构建core.jar(在(...)\ zxing处键入"ant -f core/build.xml";使用SDK Manager创建两个android虚拟机(Android 1.5和Android 2.1) );在Eclipse属性中设置SDK位置(C:\ PROGRA~1\Android\android-sdk).(对不起,如果我错过了什么)创建了一个新的Android项目,选择"从现有源创建项目",使用文件夹(...)\ zxing\android.并选择Android 2.1-update1版本.

在这个项目属性中,我在"Java Build Path" - >"Libraries" - > Add external JARs中添加了文件core.jar,位于(...)\ zxing\core.

最终,我有以下src:

`com.google.zxing.client.android
com.google.zxing.client.android.book
com.google.zxing.client.android.camera
com.google.zxing.client.android.encode
com.google.zxing.client.android.history
com.google.zxing.client.android.result
com.google.zxing.client.android.result.supplement
com.google.zxing.client.android.share
com.google.zxing.client.android.wifi`
Run Code Online (Sandbox Code Playgroud)

只有*.android.camera似乎完全正常工作;

虽然AndroidManifest.xml有一些错误:at

`<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.google.zxing.client.android"
      android:versionName="3.61 beta 1"
      android:versionCode="71"
      android:installLocation="auto">`
Run Code Online (Sandbox Code Playgroud)

在'android'包中找不到属性'installLocation'的资源标识符

并在

`<supports-screens android:xlargeScreens="true"
                android:largeScreens="true"
                android:normalScreens="true"
                android:smallScreens="true"
                android:anyDensity="true"/>`
Run Code Online (Sandbox Code Playgroud)

在'android'包中找不到属性'xlargeScreen'的资源标识符

因此,我无法建立项目.我能做什么?好像我错误地安装了一些组件(可能是Android SDK).任何提示?

需要一些关于其他东西的帮助.

嗯,如果我设法编译项目,我怎么能打电话给扫描仪?

`Bitmap bMap = BitmapFactory.decodeStream(new FileInputStream(file));  
 LuminanceSource source = new RGBLuminanceSource(bMap);
 BinaryBitmap bitmap = new BinaryBitmap(new HybridBinarizer(
                          source));
 Reader reader = new MultiFormatReader();

 Result result = reader.decode(bitmap);`
Run Code Online (Sandbox Code Playgroud)

我该如何输出文件?例如,我想处理QR码中包含的信息.我可以输出代码的其他类型的文件是什么?

如何将转换为库?

我怎样才能导入课程?我必须将它们包含在AndroidManifest.xml中吗?

不明白这个:

在您的应用程序的Eclipse构建路径中添加zxing-core项目的引用,以便它不由JVM编译.

我找到了通过Intent输出文件的其他方法.但我无法让它工作,因为我需要下载并安装一些文件.这些是什么?

Jac*_*ack 2

Android 2.1 不支持 xLargeScreens 属性(我认为是 2.2+)。请参阅问题以获取更多信息。

对于 installLocation 属性,您还必须是 2.2 及更高版本...请参阅链接:

从 API 级别 8 (2.2) 开始,您可以允许将应用程序安装在外部存储(例如设备的 SD 卡)上。这是一个可选功能,您可以使用 android:installLocation 清单属性为您的应用程序声明。如果您不声明此属性,您的应用程序将仅安装在内部存储上,而无法移动到外部存储。

另外...请将您的问题分成不同的帖子。您首先需要让您的项目运行起来,然后才能询问:

“我怎样才能调用扫描仪?”
“那我怎样才能输出这些文件呢?”
“我可以输出代码的其他类型的文件是什么?”
“我怎样才能把它变成一个图书馆?”
“如何导入类?”
“我找到了其他通过 Intent 输出文件的方法。但是我无法让它工作,因为我需要下载并安装一些文件。它们是什么?”

谷歌是你的朋友我的朋友。在我参加的所有大学课程中,我认为 Google 教给我的最多:)。