liuyuqi-dellpc 6 years ago
parent
commit
50d1f787b3

+ 8 - 3
app/src/main/AndroidManifest.xml

@@ -24,15 +24,20 @@
         android:supportsRtl="true"
         android:fullBackupContent="true"
         android:theme="@style/AppTheme">
-        <activity android:name=".activity.NoteScannerActivity">
+        <activity android:name=".activity.SettingActivaty">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
-
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
+
+            <!-- IMAGE_CAPTURE  返回Bitmap or 图片文件 -->
+            <intent-filter>
+                <action android:name="android.media.action.IMAGE_CAPTURE" />
+                <category android:name="android.intent.category.DEFAULT" />
+            </intent-filter>
         </activity>
         <activity
-            android:name=".activity.SettingActivaty"
+            android:name=".activity.NoteScannerActivity"
             android:label="@string/title_activity_setting_activaty"
             android:theme="@style/AppTheme.NoActionBar" />
         <activity

+ 9 - 15
app/src/main/java/me/yoqi/app/notescanner/notescanner/activity/SettingActivaty.java

@@ -1,32 +1,26 @@
 package me.yoqi.app.notescanner.notescanner.activity;
 
+import android.app.FragmentManager;
+import android.app.FragmentTransaction;
 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 me.yoqi.app.notescanner.notescanner.R;
 
 public class SettingActivaty extends AppCompatActivity {
+    SettingFragment sf;
 
-    private  SettingFragment sf;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_setting_activaty);
-        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
-        setSupportActionBar(toolbar);
 
-        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
-        fab.setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View view) {
-                Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
-                        .setAction("Action", null).show();
-            }
-        });
+//        Fragment设置
+        FragmentManager fm = getFragmentManager();
+        FragmentTransaction ft = fm.beginTransaction();
+        sf = new SettingFragment();
+        ft.replace(android.R.id.content, sf);
+        ft.commit();
     }
 
 }

+ 4 - 6
app/src/main/java/me/yoqi/app/notescanner/notescanner/activity/SettingFragment.java

@@ -1,7 +1,6 @@
 package me.yoqi.app.notescanner.notescanner.activity;
 
 import android.content.Context;
-import android.content.SharedPreferences;
 import android.net.Uri;
 import android.os.Bundle;
 import android.preference.PreferenceFragment;
@@ -20,7 +19,7 @@ import me.yoqi.app.notescanner.notescanner.R;
  * Use the {@link SettingFragment#newInstance} factory method to
  * create an instance of this fragment.
  */
-public class SettingFragment extends PreferenceFragment {
+public class SettingFragment extends PreferenceFragment  {
     // TODO: Rename parameter arguments, choose names that match
     // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER
     private static final String ARG_PARAM1 = "param1";
@@ -57,10 +56,9 @@ public class SettingFragment extends PreferenceFragment {
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
-        if (getArguments() != null) {
-            mParam1 = getArguments().getString(ARG_PARAM1);
-            mParam2 = getArguments().getString(ARG_PARAM2);
-        }
+        addPreferencesFromResource(R.xml.settings);
+        getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
+
     }
 
     @Override

+ 9 - 0
app/src/main/java/me/yoqi/app/notescanner/notescanner/utils/ClickListener.java

@@ -0,0 +1,9 @@
+package me.yoqi.app.notescanner.notescanner.utils;
+
+/** 点击监听事件接口
+ * Created by liuyuqi on 2017/10/19.
+ */
+public interface ClickListener {
+    void onClick(int index);
+    void onLongClick(int index);
+}

+ 16 - 0
app/src/main/java/me/yoqi/app/notescanner/notescanner/views/FullScreenImageAdapter.java

@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2017. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
+ * Morbi non lorem porttitor neque feugiat blandit. Ut vitae ipsum eget quam lacinia accumsan.
+ * Etiam sed turpis ac ipsum condimentum fringilla. Maecenas magna.
+ * Proin dapibus sapien vel ante. Aliquam erat volutpat. Pellentesque sagittis ligula eget metus.
+ * Vestibulum commodo. Ut rhoncus gravida arcu.
+ */
+
+package me.yoqi.app.notescanner.notescanner.views;
+
+/**
+ * Created by liuyuqi on 2017/10/19.
+ */
+public class FullScreenImageAdapter{
+
+}

+ 2 - 26
app/src/main/res/layout/activity_setting_activaty.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
@@ -7,28 +7,4 @@
     android:fitsSystemWindows="true"
     tools:context="me.yoqi.app.notescanner.notescanner.activity.SettingActivaty">
 
-    <android.support.design.widget.AppBarLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:theme="@style/AppTheme.AppBarOverlay">
-
-        <android.support.v7.widget.Toolbar
-            android:id="@+id/toolbar"
-            android:layout_width="match_parent"
-            android:layout_height="?attr/actionBarSize"
-            android:background="?attr/colorPrimary"
-            app:popupTheme="@style/AppTheme.PopupOverlay" />
-
-    </android.support.design.widget.AppBarLayout>
-
-    <include layout="@layout/content_setting_activaty" />
-
-    <android.support.design.widget.FloatingActionButton
-        android:id="@+id/fab"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_gravity="bottom|end"
-        android:layout_margin="@dimen/fab_margin"
-        android:src="@android:drawable/ic_dialog_email" />
-
-</android.support.design.widget.CoordinatorLayout>
+</LinearLayout>

+ 14 - 1
app/src/main/res/values-zh-rTW/strings.xml

@@ -1,3 +1,16 @@
 <resources>
-    <string name="app_name">Open Note Scanner</string>
+    <string name="app_name">文檔掃描儀</string>
+    <string name="autoMode"></string>
+    <string name="about_filename"></string>
+    <string name="answer_no">否</string>
+    <string name="answer_yes">是</string>
+    <string name="title_activity_setting_activaty">設置</string>
+    <string name="usage_stats">使用統計</string>
+    <string name="donate">捐贈</string>
+    <string name="answer_cancel">取消</string>
+    <string name="action_tag">標簽</string>
+    <string name="action_share">分享</string>
+    <string name="action_delete">刪除</string>
+    <string name="action_about">關於</string>
+    <string name="usage_stats_summary"></string>
 </resources>

+ 12 - 0
app/src/main/res/values-zh/strings.xml

@@ -1,4 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
     <string name="app_name">文档扫描仪</string>
+    <string name="action_about">关于</string>
+    <string name="action_delete">删除</string>
+    <string name="action_share">分享</string>
+    <string name="action_tag">标签</string>
+    <string name="autoMode"></string>
+    <string name="usage_stats">使用统计</string>
+    <string name="answer_cancel">取消</string>
+    <string name="answer_yes">是</string>
+    <string name="answer_no">否</string>
+    <string name="title_activity_setting_activaty">设置</string>
+    <string name="donate">捐赠</string>
+    <string name="usage_stats_summary"></string>
 </resources>

+ 65 - 0
app/src/main/res/values/strings.xml

@@ -9,4 +9,69 @@
     <string name="title_activity_fullscreen_view">FullscreenViewActivity</string>
     <string name="dummy_button">Dummy Button</string>
     <string name="dummy_content">DUMMY\nCONTENT</string>
+
+    <string name="title_activity_open_note_scanner" translatable="false">Open Note Scanner</string>
+    <string name="title_activity_gallery">Gallery</string>
+
+    <string name="title_activity_full_image">Scanned Image Viewer</string>
+    <string name="images_scanned">Images Scanned</string>
+    <string name="action_share">Share</string>
+    <string name="action_delete">Delete</string>
+    <string name="confirm_title">Confirm</string>
+    <string name="confirm_delete_text">Do you want to delete this image?</string>
+    <string name="answer_yes">Yes</string>
+    <string name="answer_no">No</string>
+    <string name="confirm_delete_multiple_text">Do you want to delete the selected images?</string>
+    <string name="share_snackbar">Share images through</string>
+    <string name="action_about">About</string>
+    <string name="about_filename">about.md</string>
+    <string name="install_opencv">Install OpenCV Manager</string>
+    <string name="confirm_install_opencv">Do you want to download OpenCV Manager from GitHub?</string>
+    <string name="answer_cancel">Cancel</string>
+    <string name="downloading">Downloading</string>
+    <string name="downloading_opencv">Downloading OpenCV Manager</string>
+    <string name="scanningToast">Searching for document\nTap again to scan whole image</string>
+    <string name="colorMode">Color Mode</string>
+    <string name="bwMode"><![CDATA[B&W mode]]></string>
+    <string name="autoMode">Automatic Mode</string>
+    <string name="manualMode">Manual Mode</string>
+    <string name="share_app">Share this App</string>
+    <string name="share_app_using">Share link through</string>
+    <string name="share_app_body">"Take a look at this great app that scans notes, drawings and documents through your camera: "</string>
+    <string name="share_app_subject">Great app to scan notes and documents</string>
+    <string name="settings">Settings</string>
+    <string name="basic_settings">Basic Settings</string>
+    <string name="automatic_tagging">Automatic Tagging</string>
+    <string name="automatic_tagging_summary">Define automatic tags to be applied on marked scans using the special page template</string>
+    <string name="match_aspect">Match preview aspect ratio</string>
+    <string name="match_aspect_summary">Most devices have the highest resolution picture aspect ratio different from the preview one, this setting will select the highest picture resolution that matches with the aspect ratio of preview</string>
+    <string name="bug_rotate">Rotate Image 180º</string>
+    <string name="bug_rotate_summary">Some devices have the camera upside down, this setting adjusts everything to make sense</string>
+    <string name="usage_stats">Usage Statistics</string>
+    <string name="usage_stats_summary">Send various usage statistics to developer. No content data will be sent</string>
+    <string name="send_message">Send Message</string>
+    <string name="send_message_summary">Send message to developer</string>
+    <string name="stats_optin_title">Usage Stats</string>
+    <string name="stats_optin_text">Do you want to enable Open Note Scanner to send anonymous usage statistics to the developer?\n\nYou can change this anytime on the settings screen.</string>
+    <string name="answer_later">Later</string>
+    <string name="ask_install_opencv">In order to work, Open Note Scanner needs the services of OpenCV Manager, which is not installed yet.</string>
+    <string name="googleplay">Google Play</string>
+    <string name="githubdownload">Direct Download</string>
+    <string name="activateunknown">Go to Settings</string>
+    <string name="messageactivateunknown">Google Play isn\'t available and Install from Unknown Sources is disabled, please go to Settings and activate it.</string>
+    <string name="github_project">Project on GitHub</string>
+    <string name="github_project_summary">This application is open source, you can help to improve it with feedback, issue reports, code and translations through the GitHub project\'s page</string>
+    <string name="donate">Buy me a coffee</string>
+    <string name="donate_summary">If you like this application and think it is useful, you may consider making a donation</string>
+    <string name="telegram">Telegram Group</string>
+    <string name="telegram_summary">Chat about the project on Telegram</string>
+    <string name="feedback_and_contributions">Feedback and contributions</string>
+    <string name="bitcoin_summary">Donate using Bitcoin cryptocurrency</string>
+    <string name="dogecoin_summary" translatable="false">Wow, such app, many useful</string>
+    <string name="paypal_summary">Many credit cards accepted</string>
+    <string name="filterModeOn">Image Processor On</string>
+    <string name="filterModeOff">Image Processor Off</string>
+    <string name="action_tag">Tag</string>
+    <string name="storage_folder">Storage Folder</string>
+    <string name="storage_folder_summary">Sets where the scanned files should be stored</string>
 </resources>

+ 81 - 0
app/src/main/res/xml/settings.xml

@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
+    <PreferenceCategory
+        android:persistent="false"
+        android:title="@string/feedback_and_contributions">
+        <CheckBoxPreference
+            android:defaultValue="false"
+            android:key="usage_stats"
+            android:summary="@string/usage_stats_summary"
+            android:title="@string/usage_stats"></CheckBoxPreference>
+        <Preference
+            android:persistent="false"
+            android:summary="@string/github_project_summary"
+            android:title="@string/github_project">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="https://github.com/ctodobom/OpenNoteScanner"></intent>
+        </Preference>
+        <Preference
+            android:persistent="false"
+            android:summary="@string/telegram_summary"
+            android:title="@string/telegram">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="https://telegram.me/OpenNoteScanner"></intent>
+        </Preference>
+        <Preference
+            android:persistent="false"
+            android:summary="@string/send_message_summary"
+            android:title="@string/send_message">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="mailto:claudemir@todobom.com"></intent>
+        </Preference>
+
+    </PreferenceCategory>
+
+    <PreferenceCategory
+        android:key="donate_pref_category"
+        android:persistent="false"
+        android:title="@string/donate">
+
+        <Preference
+            android:persistent="false"
+            android:summary="@string/donate_summary">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=X6XHVCPMRQEL4"></intent>
+        </Preference>
+
+        <Preference
+            android:persistent="false"
+            android:summary="@string/paypal_summary"
+            android:title="Paypal">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&amp;hosted_button_id=X6XHVCPMRQEL4"></intent>
+        </Preference>
+
+        <Preference
+            android:key="donate_bitcoin"
+            android:persistent="false"
+            android:summary="@string/bitcoin_summary"
+            android:title="Bitcoin">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="bitcoin:1H5tqKZoWdqkR54PGe9w67EzBnLXHBFmt9"></intent>
+        </Preference>
+
+        <Preference
+            android:key="donate_dogecoin"
+            android:persistent="false"
+            android:summary="@string/dogecoin_summary"
+            android:title="Dogecoin">
+            <intent
+                android:action="android.intent.action.VIEW"
+                android:data="bitcoin:1H5tqKZoWdqkR54PGe9w67EzBnLXHBFmt9"></intent>
+        </Preference>
+
+    </PreferenceCategory>
+</PreferenceScreen>

+ 8 - 8
mytestlibrary/mytestlibrary.iml

@@ -65,14 +65,6 @@
       <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
       <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
       <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
@@ -81,6 +73,14 @@
       <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
       <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
+      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotations" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
       <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />