我在iOS5中使用ZBar进行扫描,效果很好.
现在更新到iOS6后,它无法正常工作.它显示以下错误.
ld: file is universal (3 slices) but does not contain a(n) armv7s slice: /Users/mac4/Desktop/my desktop/My app/MyApp name 20:09:12 /MyApp name/ZBarSDK/libzbar.a for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)
我身边出了什么问题?
我正在使用ZBar SDK开发用于QR码扫描的iOS应用程序.这里zbar和SDK创作者告诉我们说
仅支持iPhone 3GS和iPhone 4,因为它们具有自动对焦的相机.ZBar库不支持iPhone 3G,也不太可能支持它.
所以我在我的plist部分添加了auto-focus-camera键Required Device Capabilities.一切都很棒,除了一件事 - iPad 2和iPod Touch 4th Gen没有自动对焦相机,但仍然可以使用我的ZBar SDK代码扫描QR码.但我的auto-focus-camera密钥不允许使用iPad 2和iPod Touch 4th Gen的用户从App Store下载我的应用程序.
换句话说,我需要找到一种方法,通过App Store在这些设备上安装我的应用程序:
在这些设备上,我的应用程序不可用:
我的问题是:如何在App Store中为第一个列表设备的用户提供我的应用程序,而不能用于第二个列表设备的用户?
任何帮助将不胜感激!
PS2:此应用程序具有所需的可用设备集.
要求:兼容iPhone 3GS,iPhone 4,iPhone 4S,iPod touch(第4代),iPad 2 Wi-Fi,iPad 2 Wi-Fi + 3G,iPad(第3代)和iPad Wi-Fi + 4G.
有谁知道,他们是怎么做到的?
PS3:同时添加两者still-camera …
我想改变相机扫描的区域.现在我拍摄的图像与设备屏幕一样大.我正在尝试裁剪图像进行分析.因此,预览中心将是扫描源.是否有任何选项可以将捕获的预览设置得更小或从byte []数据创建Bitmap并裁剪它是获得更小区域的唯一方法?我试图阅读有关它的内容,但Zbar Android的文档非常差(与iOS相比).
请点击这里:https: //postimg.cc/image/4wk4u0mln/
主要活动
public class MainActivity extends Activity
{
private Camera mCamera;
private Context context;
private CameraPreview mPreview;
private Handler autoFocusHandler;
TextView scanText;
Button scanButton;
ImageScanner scanner;
private PowerManager.WakeLock wl;
private boolean barcodeScanned = false;
private boolean previewing = true;
static {
System.loadLibrary("iconv");
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
autoFocusHandler = new Handler();
mCamera = getCameraInstance();
context = getApplicationContext();
/* Instance barcode scanner */
scanner = new ImageScanner();
scanner.setConfig(0, Config.X_DENSITY, 3); …Run Code Online (Sandbox Code Playgroud) 我对ZBar扫描性能非常满意,但是如果完全重要的话,我在ARC下运行的项目遇到了一个大问题.
也就是说,似乎存在严重的内存泄漏,随着readerView的每个新显示器呈指数级增长.在大约10倍的内存使用量开始呈指数级增长并且大约20倍的扫描程序变得无法使用之后.
我见过使用相同版本构建的示例,并且没有问题.我也在readerView上尝试了方法flushCache,但它没有帮助.
这是一个补丁:http://sourceforge.net/p/zbar/patches/36/,但我没有看到任何代码.由于我没有完整的源代码,我找不到它......
有没有人有同样的问题?
我在我的项目中替换了zBar SDK并遇到了问题.
ld: file is universal (3 slices) but does not contain a(n) armv7s slice: /Volumes/ZBarSDK/ZBarSDK/libzbar.a file '/Volumes/ZBarSDK/ZBarSDK/libzbar.a' for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)
我从http://nerdvision.net/app-development/ios/zbar-sdk下载了SDK
PS在模拟器中它工作.
我需要创建一个最多44个字符的Code 128条形码.Code 128条形码格式支持的最大字符数是多少?
我开始知道Code 128可以编码所有128个字符的ASCII,但我无法确定它支持的最大字符数.
我试图让ZBar进入调试会话.我能够这样做,但我无法关闭优化器,因此我的调试会话意外跳转,许多变量都标记为optimized-outEclipse Indigo.我在Ubuntu中运行.
我尝试尽可能在Makefile中的任何gcc调用中添加-O0,因为最后一个-O是代理的.我使用-Q --help = optimizers来查找要查找的内容,但它的输出有点奇怪:
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I./include -I./zbar -I./include -O0 -O0 -Q --help=optimizers -Wall -Wno-parentheses -O0 -g -O0 -Q --help=optimizers -MT zbar/zbar_libzbar_la-config.lo -MD -MP -MF zbar/.deps/zbar_libzbar_la-config.Tpo -c zbar/config.c -fPIC -DPIC -o zbar/.libs/zbar_libzbar_la-config.o
The following options control optimizations:
make[1]: *** [zbar/zbar_libzbar_la-config.lo] Error 1
-O<number>
make: *** [all] Error 2
-Ofast
-Os
-falign-functions [disabled]
-falign-jumps [disabled]
-falign-labels [disabled]
-falign-loops [disabled]
-fasynchronous-unwind-tables [enabled]
-fbranch-count-reg [enabled]
-fbranch-probabilities [disabled]
-fbranch-target-load-optimize [disabled]
-fbranch-target-load-optimize2 [disabled]
-fbtr-bb-exclusive [disabled]
-fcaller-saves …Run Code Online (Sandbox Code Playgroud) 我正在使用ZBar SDK构建iOS代码扫描程序项目.我试图直接从ZBar源构建我的项目,而不是包括libzbar.a静态库.
我已经下载了ZBar源代码,其中包含用于构建libzbar.a的XCode项目.我尝试从项目中复制所有源文件,但它不起作用.我继续得到未定义的符号错误.
考虑到我只需要支持iOS,应该包含哪些源文件?
是否应严格遵循文件夹结构来构建项目?
如果我直接包含源文件,是否需要构建设置?
编辑:
我遵循相同的文件夹结构和构建libzbar的XCode项目中使用的设置.我已经设法构建了库,但它在链接时仍然失败.我收到错误:ld: duplicate symbol _OBJC_METACLASS对于所有源文件.我已经进行了双重检查,项目中没有对原始libzbar.a静态库的引用或者这些源文件不止一次出现.如果我删除它们的引用,项目构建正常,但只要引用库中的任何符号,它就会失败.我想我还是错过了什么!!
我从git最新的zBar QR Code Scanner(SDK 0.2)下载了.我试图在我的应用程序中实现它.我在Android Studio上工作.
我做了什么:
无需更改gradle中的任何内容,因为它已配置为从libs项目导入每个jar文件.见下文:
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.crashlytics.android:crashlytics:1.+'
compile fileTree(dir: 'libs', include: '*.jar')
compile project(':FacebookSDK')
compile project(':actionbarsherlock')
compile project(':Aviary-SDK')
}
Run Code Online (Sandbox Code Playgroud)可以看到每个类形式的zBar lib,所以我已经配置了所有内容.我运行我的ScannerActivity并在onCreate中我得到错误:
scanner = new ImageScanner(); // this line shows an error
scanner.setConfig(0, Config.X_DENSITY, 3);
scanner.setConfig(0, Config.Y_DENSITY, 3);
Run Code Online (Sandbox Code Playgroud)因此实现与示例中的1:1相同.
我的错误日志:
java.lang.UnsatisfiedLinkError: Couldn't load zbarjni from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/pl.toptof.android.debug-2.apk"],nativeLibraryDirectories=[/data/app-lib/pl.toptof.android.debug-2, /vendor/lib, /system/lib]]]: findLibrary returned null
Run Code Online (Sandbox Code Playgroud)
请帮我解决这个问题.我不知道为什么我的Android Studio可以看到lib,但不能像在示例中那样使用它.
我在我的项目中使用zbar扫描程序库.更新到sdk 23后,Marshmallow扫描仪无法正常工作.以下是gradle文件.如果我将targetSdkVersion设置为23以外的任何东西,扫描仪正在工作.
以下是gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 15
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "net.sourceforge.zbar.android.CameraTest"
minSdkVersion 9
targetSdkVersion 23
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile files('libs/zbar.jar')
}
Run Code Online (Sandbox Code Playgroud)
以下是我获得异常日志的唯一一行:
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: FATAL EXCEPTION: main
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: Process: net.sourceforge.zbar.android.CameraTest, PID: 7719
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/net.sourceforge.zbar.android.CameraTest-2/lib/arm/libiconv.so: has text relocations
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: at java.lang.Runtime.loadLibrary(Runtime.java:372)
10-15 21:19:00.682 7719-7719/? E/AndroidRuntime: at java.lang.System.loadLibrary(System.java:1076) …Run Code Online (Sandbox Code Playgroud)