让官方demo可以运行:
一.首先去GitHub上下载zxing andriod 目录:为demo工程 core: andriod-core:
二.遇到问题解决方法 1.app build.gradle 导入依赖
dependencies {
compile 'com.google.zxing:core:3.3.0'
compile 'com.google.zxing:android-core:3.3.0'
}
2.andriod-core中的CameraConfigurationUtils.java文件拷贝到demo camera目录下
3.方法找不到的问题
calResult.getStart().getTime() // 意思是将Date转成long(时间戳)
三、将样例工程打包成library 1.首先将app 下的AndroidManifest.xml 配置好,并配置成library,删除applicationId
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:overrideLibrary="com.google.zxing.client.android"
package="com.google.zxing.client.android"
android:versionName="4.7.7"
android:versionCode="107"
android:launchMode="standard"
android:configChanges="orientation|keyboardHidden|screenSize">
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<!--<!– unavailable in API 23 –>-->
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-sdk android:minSdkVersion="16" android:targetSdkVersion="22"/>
<application android:allowBackup="true">
<activity android:name=".CaptureActivity"
android:screenOrientation="portrait" />
</application>
</manifest>
2.导入zxing的核心库 app build.gradle
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
buildToolsVersion "25.0.2"
defaultConfig {
// applicationId "com.google.zxing.client.android"
minSdkVersion 15
targetSdkVersion 22
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.google.zxing:core:3.3.0'
compile 'com.google.zxing:android-core:3.3.0'
}
2.将运行的的switch 分支 替换成 if else的形式