diff --git a/EncodingZxing/app/src/main/java/com/pureix/encodingzxing/MainActivity.java b/EncodingZxing/app/src/main/java/com/pureix/encodingzxing/MainActivity.java deleted file mode 100644 index 9a6837a..0000000 --- a/EncodingZxing/app/src/main/java/com/pureix/encodingzxing/MainActivity.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.pureix.encodingzxing; - -import android.graphics.Color; -import android.os.Bundle; -import android.support.design.widget.FloatingActionButton; -import android.support.design.widget.Snackbar; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.widget.Toolbar; -import android.view.View; -import android.view.Menu; -import android.view.MenuItem; -import android.widget.ImageView; - -import com.pureix.encodinganddecodinglib.EncodingZxing; - -public class MainActivity extends AppCompatActivity { - - private ImageView imageView; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); - Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); - setSupportActionBar(toolbar); - - imageView = (ImageView) findViewById(R.id.imageView); - - FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); - fab.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { -// imageView.setImageBitmap(EncodingZxing.encodeToQrCode("Encoding with zxing", 500)); - imageView.setImageBitmap(EncodingZxing.encodeToPDF417("Encoding with zxing", 500, Color.BLACK, Color.WHITE)); - - Snackbar.make(view, "Done", Snackbar.LENGTH_LONG) - .setAction("Action", null).show(); - - } - }); - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - // Inflate the menu; this adds items to the action bar if it is present. - getMenuInflater().inflate(R.menu.menu_main, menu); - return true; - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - // Handle action bar item clicks here. The action bar will - // automatically handle clicks on the Home/Up button, so long - // as you specify a parent activity in AndroidManifest.xml. - int id = item.getItemId(); - - //noinspection SimplifiableIfStatement - if (id == R.id.action_settings) { - return true; - } - - return super.onOptionsItemSelected(item); - } -} diff --git a/EncodingZxing/app/src/main/res/layout/content_main.xml b/EncodingZxing/app/src/main/res/layout/content_main.xml deleted file mode 100644 index d95b964..0000000 --- a/EncodingZxing/app/src/main/res/layout/content_main.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - diff --git a/EncodingZxing/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/EncodingZxing/app/src/main/res/mipmap-hdpi/ic_launcher_round.png deleted file mode 100644 index 9a078e3..0000000 Binary files a/EncodingZxing/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ diff --git a/EncodingZxing/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/EncodingZxing/app/src/main/res/mipmap-mdpi/ic_launcher_round.png deleted file mode 100644 index efc028a..0000000 Binary files a/EncodingZxing/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ diff --git a/EncodingZxing/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/EncodingZxing/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png deleted file mode 100644 index 3af2608..0000000 Binary files a/EncodingZxing/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ diff --git a/EncodingZxing/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/EncodingZxing/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png deleted file mode 100644 index 9bec2e6..0000000 Binary files a/EncodingZxing/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/EncodingZxing/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/EncodingZxing/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png deleted file mode 100644 index 34947cd..0000000 Binary files a/EncodingZxing/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ diff --git a/EncodingZxing/app/src/main/res/values/dimens.xml b/EncodingZxing/app/src/main/res/values/dimens.xml deleted file mode 100644 index 59a0b0c..0000000 --- a/EncodingZxing/app/src/main/res/values/dimens.xml +++ /dev/null @@ -1,3 +0,0 @@ - - 16dp - diff --git a/EncodingZxing/app/src/main/res/values/strings.xml b/EncodingZxing/app/src/main/res/values/strings.xml deleted file mode 100644 index 0ddc995..0000000 --- a/EncodingZxing/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,4 +0,0 @@ - - EncodingZxing - Settings - diff --git a/EncodingZxing/settings.gradle b/EncodingZxing/settings.gradle deleted file mode 100644 index 6490d95..0000000 --- a/EncodingZxing/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -include ':app', ':encoding_zxing_lib' diff --git a/EncodingZxing/.gitignore b/Sample/.gitignore similarity index 100% rename from EncodingZxing/.gitignore rename to Sample/.gitignore diff --git a/EncodingZxing/.idea/compiler.xml b/Sample/.idea/compiler.xml similarity index 100% rename from EncodingZxing/.idea/compiler.xml rename to Sample/.idea/compiler.xml diff --git a/EncodingZxing/.idea/copyright/profiles_settings.xml b/Sample/.idea/copyright/profiles_settings.xml similarity index 100% rename from EncodingZxing/.idea/copyright/profiles_settings.xml rename to Sample/.idea/copyright/profiles_settings.xml diff --git a/Sample/.idea/encodings.xml b/Sample/.idea/encodings.xml new file mode 100644 index 0000000..97626ba --- /dev/null +++ b/Sample/.idea/encodings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/EncodingZxing/.idea/gradle.xml b/Sample/.idea/gradle.xml similarity index 100% rename from EncodingZxing/.idea/gradle.xml rename to Sample/.idea/gradle.xml diff --git a/EncodingZxing/.idea/misc.xml b/Sample/.idea/misc.xml similarity index 100% rename from EncodingZxing/.idea/misc.xml rename to Sample/.idea/misc.xml diff --git a/EncodingZxing/.idea/modules.xml b/Sample/.idea/modules.xml similarity index 79% rename from EncodingZxing/.idea/modules.xml rename to Sample/.idea/modules.xml index 6337c1f..4823b06 100644 --- a/EncodingZxing/.idea/modules.xml +++ b/Sample/.idea/modules.xml @@ -2,7 +2,7 @@ - + diff --git a/EncodingZxing/.idea/runConfigurations.xml b/Sample/.idea/runConfigurations.xml similarity index 100% rename from EncodingZxing/.idea/runConfigurations.xml rename to Sample/.idea/runConfigurations.xml diff --git a/Sample/.idea/vcs.xml b/Sample/.idea/vcs.xml new file mode 100644 index 0000000..6c0b863 --- /dev/null +++ b/Sample/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/EncodingZxing/app/.gitignore b/Sample/app/.gitignore similarity index 100% rename from EncodingZxing/app/.gitignore rename to Sample/app/.gitignore diff --git a/EncodingZxing/app/build.gradle b/Sample/app/build.gradle similarity index 88% rename from EncodingZxing/app/build.gradle rename to Sample/app/build.gradle index 617e84a..2294f5f 100644 --- a/EncodingZxing/app/build.gradle +++ b/Sample/app/build.gradle @@ -4,7 +4,7 @@ android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfig { - applicationId "com.pureix.encodingzxing" + applicationId "com.pureix.sample" minSdkVersion 15 targetSdkVersion 25 versionCode 1 @@ -25,7 +25,6 @@ dependencies { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:25.1.0' - compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4' compile 'com.android.support:design:25.1.0' testCompile 'junit:junit:4.12' diff --git a/Sample/app/proguard-rules.pro b/Sample/app/proguard-rules.pro new file mode 100644 index 0000000..41afecb --- /dev/null +++ b/Sample/app/proguard-rules.pro @@ -0,0 +1,17 @@ +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in D:\Android\sdk/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the proguardFiles +# directive in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/EncodingZxing/app/src/androidTest/java/com/pureix/encodingzxing/ExampleInstrumentedTest.java b/Sample/app/src/androidTest/java/com/pureix/sample/ExampleInstrumentedTest.java similarity index 84% rename from EncodingZxing/app/src/androidTest/java/com/pureix/encodingzxing/ExampleInstrumentedTest.java rename to Sample/app/src/androidTest/java/com/pureix/sample/ExampleInstrumentedTest.java index 6919ae7..becded7 100644 --- a/EncodingZxing/app/src/androidTest/java/com/pureix/encodingzxing/ExampleInstrumentedTest.java +++ b/Sample/app/src/androidTest/java/com/pureix/sample/ExampleInstrumentedTest.java @@ -1,4 +1,4 @@ -package com.pureix.encodingzxing; +package com.pureix.sample; import android.content.Context; import android.support.test.InstrumentationRegistry; @@ -21,6 +21,6 @@ public class ExampleInstrumentedTest { // Context of the app under test. Context appContext = InstrumentationRegistry.getTargetContext(); - assertEquals("com.pureix.encodingzxing", appContext.getPackageName()); + assertEquals("com.pureix.sample", appContext.getPackageName()); } } diff --git a/EncodingZxing/app/src/main/AndroidManifest.xml b/Sample/app/src/main/AndroidManifest.xml similarity index 88% rename from EncodingZxing/app/src/main/AndroidManifest.xml rename to Sample/app/src/main/AndroidManifest.xml index 182b4ac..1aa2afb 100644 --- a/EncodingZxing/app/src/main/AndroidManifest.xml +++ b/Sample/app/src/main/AndroidManifest.xml @@ -1,12 +1,11 @@ + package="com.pureix.sample"> + + + diff --git a/Sample/app/src/main/res/drawable-v21/ic_menu_gallery.xml b/Sample/app/src/main/res/drawable-v21/ic_menu_gallery.xml new file mode 100644 index 0000000..f6872c4 --- /dev/null +++ b/Sample/app/src/main/res/drawable-v21/ic_menu_gallery.xml @@ -0,0 +1,9 @@ + + + diff --git a/Sample/app/src/main/res/drawable-v21/ic_menu_manage.xml b/Sample/app/src/main/res/drawable-v21/ic_menu_manage.xml new file mode 100644 index 0000000..c1be60b --- /dev/null +++ b/Sample/app/src/main/res/drawable-v21/ic_menu_manage.xml @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/Sample/app/src/main/res/drawable-v21/ic_menu_send.xml b/Sample/app/src/main/res/drawable-v21/ic_menu_send.xml new file mode 100644 index 0000000..00c668c --- /dev/null +++ b/Sample/app/src/main/res/drawable-v21/ic_menu_send.xml @@ -0,0 +1,9 @@ + + + diff --git a/Sample/app/src/main/res/drawable-v21/ic_menu_share.xml b/Sample/app/src/main/res/drawable-v21/ic_menu_share.xml new file mode 100644 index 0000000..a28fb9e --- /dev/null +++ b/Sample/app/src/main/res/drawable-v21/ic_menu_share.xml @@ -0,0 +1,9 @@ + + + diff --git a/Sample/app/src/main/res/drawable-v21/ic_menu_slideshow.xml b/Sample/app/src/main/res/drawable-v21/ic_menu_slideshow.xml new file mode 100644 index 0000000..209aa64 --- /dev/null +++ b/Sample/app/src/main/res/drawable-v21/ic_menu_slideshow.xml @@ -0,0 +1,9 @@ + + + diff --git a/Sample/app/src/main/res/drawable/side_nav_bar.xml b/Sample/app/src/main/res/drawable/side_nav_bar.xml new file mode 100644 index 0000000..458b4b0 --- /dev/null +++ b/Sample/app/src/main/res/drawable/side_nav_bar.xml @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/Sample/app/src/main/res/layout/activity_main.xml b/Sample/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..a61d8a6 --- /dev/null +++ b/Sample/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,25 @@ + + + + + + + + diff --git a/EncodingZxing/app/src/main/res/layout/activity_main.xml b/Sample/app/src/main/res/layout/app_bar_main.xml similarity index 93% rename from EncodingZxing/app/src/main/res/layout/activity_main.xml rename to Sample/app/src/main/res/layout/app_bar_main.xml index ed75bb3..87a76f2 100644 --- a/EncodingZxing/app/src/main/res/layout/activity_main.xml +++ b/Sample/app/src/main/res/layout/app_bar_main.xml @@ -4,7 +4,8 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context="com.pureix.encodingzxing.MainActivity"> + android:fitsSystemWindows="true" + tools:context="com.pureix.sample.MainActivity"> + + + + diff --git a/Sample/app/src/main/res/layout/nav_header_main.xml b/Sample/app/src/main/res/layout/nav_header_main.xml new file mode 100644 index 0000000..5eea9a6 --- /dev/null +++ b/Sample/app/src/main/res/layout/nav_header_main.xml @@ -0,0 +1,35 @@ + + + + + + + + + + diff --git a/Sample/app/src/main/res/menu/activity_main_drawer.xml b/Sample/app/src/main/res/menu/activity_main_drawer.xml new file mode 100644 index 0000000..2a7f467 --- /dev/null +++ b/Sample/app/src/main/res/menu/activity_main_drawer.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + diff --git a/EncodingZxing/app/src/main/res/menu/menu_main.xml b/Sample/app/src/main/res/menu/main.xml similarity index 59% rename from EncodingZxing/app/src/main/res/menu/menu_main.xml rename to Sample/app/src/main/res/menu/main.xml index e466d09..a2411e3 100644 --- a/EncodingZxing/app/src/main/res/menu/menu_main.xml +++ b/Sample/app/src/main/res/menu/main.xml @@ -1,7 +1,6 @@ + + xmlns:app="http://schemas.android.com/apk/res-auto"> + + + diff --git a/Sample/app/src/main/res/values-w820dp/dimens.xml b/Sample/app/src/main/res/values-w820dp/dimens.xml new file mode 100644 index 0000000..63fc816 --- /dev/null +++ b/Sample/app/src/main/res/values-w820dp/dimens.xml @@ -0,0 +1,6 @@ + + + 64dp + diff --git a/EncodingZxing/app/src/main/res/values/colors.xml b/Sample/app/src/main/res/values/colors.xml similarity index 100% rename from EncodingZxing/app/src/main/res/values/colors.xml rename to Sample/app/src/main/res/values/colors.xml diff --git a/Sample/app/src/main/res/values/dimens.xml b/Sample/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..c2effc5 --- /dev/null +++ b/Sample/app/src/main/res/values/dimens.xml @@ -0,0 +1,9 @@ + + + 16dp + 160dp + + 16dp + 16dp + 16dp + diff --git a/Sample/app/src/main/res/values/drawables.xml b/Sample/app/src/main/res/values/drawables.xml new file mode 100644 index 0000000..52c6a6c --- /dev/null +++ b/Sample/app/src/main/res/values/drawables.xml @@ -0,0 +1,8 @@ + + @android:drawable/ic_menu_camera + @android:drawable/ic_menu_gallery + @android:drawable/ic_menu_slideshow + @android:drawable/ic_menu_manage + @android:drawable/ic_menu_share + @android:drawable/ic_menu_send + diff --git a/Sample/app/src/main/res/values/strings.xml b/Sample/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..e7943a4 --- /dev/null +++ b/Sample/app/src/main/res/values/strings.xml @@ -0,0 +1,8 @@ + + Sample + + Open navigation drawer + Close navigation drawer + + Settings + diff --git a/EncodingZxing/app/src/main/res/values/styles.xml b/Sample/app/src/main/res/values/styles.xml similarity index 100% rename from EncodingZxing/app/src/main/res/values/styles.xml rename to Sample/app/src/main/res/values/styles.xml diff --git a/EncodingZxing/app/src/test/java/com/pureix/encodingzxing/ExampleUnitTest.java b/Sample/app/src/test/java/com/pureix/sample/ExampleUnitTest.java similarity index 91% rename from EncodingZxing/app/src/test/java/com/pureix/encodingzxing/ExampleUnitTest.java rename to Sample/app/src/test/java/com/pureix/sample/ExampleUnitTest.java index 0665b78..df2e879 100644 --- a/EncodingZxing/app/src/test/java/com/pureix/encodingzxing/ExampleUnitTest.java +++ b/Sample/app/src/test/java/com/pureix/sample/ExampleUnitTest.java @@ -1,4 +1,4 @@ -package com.pureix.encodingzxing; +package com.pureix.sample; import org.junit.Test; diff --git a/EncodingZxing/build.gradle b/Sample/build.gradle similarity index 87% rename from EncodingZxing/build.gradle rename to Sample/build.gradle index 3384c4b..74b2ab0 100644 --- a/EncodingZxing/build.gradle +++ b/Sample/build.gradle @@ -5,7 +5,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:2.3.0-beta2' + classpath 'com.android.tools.build:gradle:2.2.3' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/EncodingZxing/encoding_zxing_lib/.gitignore b/Sample/encoding_zxing_lib/.gitignore similarity index 100% rename from EncodingZxing/encoding_zxing_lib/.gitignore rename to Sample/encoding_zxing_lib/.gitignore diff --git a/EncodingZxing/encoding_zxing_lib/build.gradle b/Sample/encoding_zxing_lib/build.gradle similarity index 100% rename from EncodingZxing/encoding_zxing_lib/build.gradle rename to Sample/encoding_zxing_lib/build.gradle diff --git a/EncodingZxing/app/proguard-rules.pro b/Sample/encoding_zxing_lib/proguard-rules.pro similarity index 100% rename from EncodingZxing/app/proguard-rules.pro rename to Sample/encoding_zxing_lib/proguard-rules.pro diff --git a/EncodingZxing/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java b/Sample/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java similarity index 100% rename from EncodingZxing/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java rename to Sample/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java diff --git a/EncodingZxing/encoding_zxing_lib/src/main/AndroidManifest.xml b/Sample/encoding_zxing_lib/src/main/AndroidManifest.xml similarity index 100% rename from EncodingZxing/encoding_zxing_lib/src/main/AndroidManifest.xml rename to Sample/encoding_zxing_lib/src/main/AndroidManifest.xml diff --git a/Sample/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java b/Sample/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java new file mode 100644 index 0000000..df2a46f --- /dev/null +++ b/Sample/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java @@ -0,0 +1,128 @@ +package com.pureix.encodinganddecodinglib; + +import android.graphics.Bitmap; +import android.graphics.Color; + +import com.google.zxing.BarcodeFormat; +import com.google.zxing.WriterException; +import com.google.zxing.common.BitMatrix; +import com.google.zxing.pdf417.PDF417Writer; +import com.google.zxing.qrcode.QRCodeWriter; + +/** + * Created by MWind on 1/17/2017. + */ + +public class EncodingZxing +{ + public static Bitmap encodeToPDF417(String text, int width, int dotColor, int backgroundColor){ + int height = 0; + if(1000 < width) { + height = (int) (width / 3.8); + }else + if(600 < width) { + height = (int) (width / 3.6); + }else + if(500 < width) { + height = (int) (width / 3.3); + }else + if(400 < width) { + height = (int) (width / 3.1); + }else + if(200 < width) { + height = (int) (width / 3.0); + }else + if(100 < width) { + height = (int) (width / 2.6); + }else + { + height = (int) (width / 1.84); + } + PDF417Writer writer = new PDF417Writer(); + BitMatrix matrix = null; + try { + matrix = writer.encode(text, BarcodeFormat.PDF_417, width, height); + } catch (WriterException ex) { + ex.printStackTrace(); + } + Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); + for (int x = 0; x < width; x++){ + for (int y = 0; y < height; y++){ + bmp.setPixel(x, y, matrix.get(x,y) ? dotColor : backgroundColor); + } + } + return bmp; + } + + public static Bitmap encodeToPDF417(String text, int width, int height, + int dotColor, int backgroundColor) + { + PDF417Writer writer = new PDF417Writer(); + BitMatrix matrix = null; + try { + matrix = writer.encode(text, BarcodeFormat.PDF_417, width, height); + } catch (WriterException ex) { + ex.printStackTrace(); + } + Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); + for (int x = 0; x < width; x++){ + for (int y = 0; y < height; y++){ + bmp.setPixel(x, y, matrix.get(x,y) ? dotColor : backgroundColor); + } + } + return bmp; + } + + public static Bitmap encodeToQrCode(String text, int width){ + int height = 0; + height = width; + QRCodeWriter writer = new QRCodeWriter(); + BitMatrix matrix = null; + try { + matrix = writer.encode(text, BarcodeFormat.QR_CODE, width, height); + } catch (WriterException ex) { + ex.printStackTrace(); + } + Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); + for (int x = 0; x < width; x++){ + for (int y = 0; y < height; y++){ + bmp.setPixel(x, y, matrix.get(x,y) ? Color.BLACK : Color.WHITE); + } + } + return bmp; + } + public static Bitmap encodeToQrCode(String text, int width, int height){ + QRCodeWriter writer = new QRCodeWriter(); + BitMatrix matrix = null; + try { + matrix = writer.encode(text, BarcodeFormat.QR_CODE, 100, 100); + } catch (WriterException ex) { + ex.printStackTrace(); + } + Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); + for (int x = 0; x < width; x++){ + for (int y = 0; y < height; y++){ + bmp.setPixel(x, y, matrix.get(x,y) ? Color.BLACK : Color.WHITE); + } + } + return bmp; + } + + public static Bitmap encodeToQrCode(String text, int width, int height, + int dotColor, int backgroundColor){ + QRCodeWriter writer = new QRCodeWriter(); + BitMatrix matrix = null; + try { + matrix = writer.encode(text, BarcodeFormat.QR_CODE, width, height); + } catch (WriterException ex) { + ex.printStackTrace(); + } + Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565); + for (int x = 0; x < width; x++){ + for (int y = 0; y < height; y++){ + bmp.setPixel(x, y, matrix.get(x,y) ? dotColor : backgroundColor); + } + } + return bmp; + } +} diff --git a/EncodingZxing/encoding_zxing_lib/src/main/res/values/strings.xml b/Sample/encoding_zxing_lib/src/main/res/values/strings.xml similarity index 100% rename from EncodingZxing/encoding_zxing_lib/src/main/res/values/strings.xml rename to Sample/encoding_zxing_lib/src/main/res/values/strings.xml diff --git a/EncodingZxing/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java b/Sample/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java similarity index 100% rename from EncodingZxing/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java rename to Sample/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java diff --git a/EncodingZxing/gradle.properties b/Sample/gradle.properties similarity index 100% rename from EncodingZxing/gradle.properties rename to Sample/gradle.properties diff --git a/Sample/gradle/wrapper/gradle-wrapper.jar b/Sample/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..13372ae Binary files /dev/null and b/Sample/gradle/wrapper/gradle-wrapper.jar differ diff --git a/Sample/gradle/wrapper/gradle-wrapper.properties b/Sample/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..04e285f --- /dev/null +++ b/Sample/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Mon Dec 28 10:00:20 PST 2015 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip diff --git a/EncodingZxing/gradlew b/Sample/gradlew similarity index 100% rename from EncodingZxing/gradlew rename to Sample/gradlew diff --git a/EncodingZxing/gradlew.bat b/Sample/gradlew.bat similarity index 100% rename from EncodingZxing/gradlew.bat rename to Sample/gradlew.bat diff --git a/Sample/settings.gradle b/Sample/settings.gradle new file mode 100644 index 0000000..db9fc12 --- /dev/null +++ b/Sample/settings.gradle @@ -0,0 +1,2 @@ +include ':app' +include ':encoding_zxing_lib' \ No newline at end of file diff --git a/library/encoding_zxing_lib/.gitignore b/library/encoding_zxing_lib/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/library/encoding_zxing_lib/.gitignore @@ -0,0 +1 @@ +/build diff --git a/library/encoding_zxing_lib/build.gradle b/library/encoding_zxing_lib/build.gradle new file mode 100644 index 0000000..6799c1e --- /dev/null +++ b/library/encoding_zxing_lib/build.gradle @@ -0,0 +1,35 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 25 + buildToolsVersion "25.0.2" + + defaultConfig { + minSdkVersion 15 + targetSdkVersion 25 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } +} + +dependencies { + compile fileTree(dir: 'libs', include: ['*.jar']) + androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { + exclude group: 'com.android.support', module: 'support-annotations' + }) + compile 'com.android.support:appcompat-v7:25.1.0' + testCompile 'junit:junit:4.12' + + compile 'com.journeyapps:zxing-android-embedded:3.4.0' + + compile 'com.google.zxing:core:3.2.1' +} diff --git a/EncodingZxing/encoding_zxing_lib/proguard-rules.pro b/library/encoding_zxing_lib/proguard-rules.pro similarity index 100% rename from EncodingZxing/encoding_zxing_lib/proguard-rules.pro rename to library/encoding_zxing_lib/proguard-rules.pro diff --git a/library/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java b/library/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java new file mode 100644 index 0000000..8829fe1 --- /dev/null +++ b/library/encoding_zxing_lib/src/androidTest/java/com/pureix/encodinganddecodinglib/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.pureix.encodinganddecodinglib; + +import android.content.Context; +import android.support.test.InstrumentationRegistry; +import android.support.test.runner.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumentation test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() throws Exception { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getTargetContext(); + + assertEquals("com.pureix.encodinganddecodinglib.test", appContext.getPackageName()); + } +} diff --git a/library/encoding_zxing_lib/src/main/AndroidManifest.xml b/library/encoding_zxing_lib/src/main/AndroidManifest.xml new file mode 100644 index 0000000..db1c0ed --- /dev/null +++ b/library/encoding_zxing_lib/src/main/AndroidManifest.xml @@ -0,0 +1,10 @@ + + + + + + + diff --git a/EncodingZxing/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java b/library/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java similarity index 100% rename from EncodingZxing/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java rename to library/encoding_zxing_lib/src/main/java/com/pureix/encodinganddecodinglib/EncodingZxing.java diff --git a/library/encoding_zxing_lib/src/main/res/values/strings.xml b/library/encoding_zxing_lib/src/main/res/values/strings.xml new file mode 100644 index 0000000..7c73b63 --- /dev/null +++ b/library/encoding_zxing_lib/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + Encoding and Decoding Lib + diff --git a/library/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java b/library/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java new file mode 100644 index 0000000..c26df74 --- /dev/null +++ b/library/encoding_zxing_lib/src/test/java/com/pureix/encodinganddecodinglib/ExampleUnitTest.java @@ -0,0 +1,17 @@ +package com.pureix.encodinganddecodinglib; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() throws Exception { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file