liuyuqi-dellpc 6 years ago
parent
commit
34b4611708

+ 5 - 0
app/build.gradle

@@ -9,7 +9,12 @@ android {
         versionCode 1
         versionName "1.0"
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
+        ndk {
+            // 设置支持的SO库架构
+            abiFilters 'armeabi' //, 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
+        }
     }
+    useLibrary 'org.apache.http.legacy'
     signingConfigs {
         releaseConfig {
             storeFile file("../monkeytong.jks")

+ 17 - 2
app/src/main/AndroidManifest.xml

@@ -2,6 +2,15 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="me.yoqi.app.wxredpacket">
 
+    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
+    <uses-permission android:name="android.permission.READ_LOGS" />
+
     <application
         android:allowBackup="true"
         android:icon="@mipmap/ic_launcher"
@@ -9,14 +18,20 @@
         android:roundIcon="@mipmap/ic_launcher_round"
         android:supportsRtl="true"
         android:theme="@style/AppTheme">
-        <activity android:name=".activities.MainActivity">
+        <activity android:name=".activities.MainActivity"
+            android:launchMode="singleTask"
+            android:theme="@style/Base.Theme.AppCompat.Light">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
 
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
-        <activity android:name=".activities.SettingsActivity"></activity>
+        <activity android:name=".activities.SettingsActivity"
+            android:theme="@style/Base.Theme.AppCompat.Light"></activity>
+        <activity android:name=".activities.WebViewActivity"
+            android:theme="@style/Base.Theme.AppCompat.Light"></activity>
+        <service android:name=".services.HongbaoService"></service>
     </application>
 
 </manifest>

+ 6 - 2
app/src/main/java/me/yoqi/app/wxredpacket/activities/SeekBarPreference.java

@@ -8,10 +8,10 @@ import android.view.View;
 import android.widget.SeekBar;
 import android.widget.TextView;
 
-import xyz.monkeytong.hongbao.R;
+import me.yoqi.app.wxredpacket.R;
 
 /**
- * Created by Zhongyi on 2/3/16.
+ *
  */
 public class SeekBarPreference extends DialogPreference {
     private SeekBar seekBar;
@@ -81,6 +81,10 @@ public class SeekBarPreference extends DialogPreference {
         super.onDialogClosed(positiveResult);
     }
 
+    /**
+     * 设置弹框
+     * @param delay 延时s
+     */
     private void setHintText(int delay) {
         if (delay == 0) {
             this.textView.setText(getContext().getString(R.string.delay_instantly) + hintText);

+ 17 - 9
app/src/main/java/me/yoqi/app/wxredpacket/activities/SettingsActivity.java

@@ -14,13 +14,13 @@ import android.view.WindowManager;
 import android.widget.TextView;
 import android.widget.Toast;
 
-import xyz.monkeytong.hongbao.R;
-import xyz.monkeytong.hongbao.fragments.CommentSettingsFragment;
-import xyz.monkeytong.hongbao.fragments.GeneralSettingsFragment;
+import me.yoqi.app.wxredpacket.R;
+import me.yoqi.app.wxredpacket.fragments.CommentSettingsFragment;
+import me.yoqi.app.wxredpacket.fragments.GeneralSettingsFragment;
+
 
 /**
- * Created by Zhongyi on 1/19/16.
- * Settings page.
+ * 设置界面
  */
 public class SettingsActivity extends FragmentActivity {
     @Override
@@ -32,6 +32,9 @@ public class SettingsActivity extends FragmentActivity {
         prepareSettings();
     }
 
+    /**
+     * 加载预定义设置
+     */
     private void prepareSettings() {
         String title, fragId;
         Bundle bundle = getIntent().getExtras();
@@ -57,16 +60,15 @@ public class SettingsActivity extends FragmentActivity {
         fragmentTransaction.commit();
     }
 
+    /**
+     * 适配手机,加载UI
+     */
     @TargetApi(Build.VERSION_CODES.LOLLIPOP)
     private void loadUI() {
         if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) return;
-
         Window window = this.getWindow();
-
         window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
-
         window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
-
         window.setStatusBarColor(0xffE46C62);
     }
 
@@ -75,10 +77,16 @@ public class SettingsActivity extends FragmentActivity {
         super.onResume();
     }
 
+    /**
+     * @param view
+     */
     public void performBack(View view) {
         super.onBackPressed();
     }
 
+    /**进入AccessibilityPage设置权限
+     * @param view
+     */
     public void enterAccessibilityPage(View view) {
         Toast.makeText(this, getString(R.string.turn_on_toast), Toast.LENGTH_SHORT).show();
         Intent mAccessibleIntent =

+ 2 - 2
app/src/main/java/me/yoqi/app/wxredpacket/activities/WebViewActivity.java

@@ -17,8 +17,8 @@ import android.webkit.WebViewClient;
 import android.widget.TextView;
 import android.widget.Toast;
 
-import xyz.monkeytong.hongbao.R;
-import xyz.monkeytong.hongbao.utils.DownloadUtil;
+import me.yoqi.app.wxredpacket.R;
+import me.yoqi.app.wxredpacket.utils.DownloadUtil;
 
 /**
  * Created by Zhongyi on 1/19/16.

+ 4 - 1
app/src/main/java/me/yoqi/app/wxredpacket/fragments/CommentSettingsFragment.java

@@ -10,7 +10,7 @@ import android.widget.Toast;
 import me.yoqi.app.wxredpacket.R;
 
 /**
- * Created by Zhongyi on 2/4/16.
+ *
  */
 public class CommentSettingsFragment extends PreferenceFragment {
     private Bundle savedInstanceState;
@@ -23,6 +23,9 @@ public class CommentSettingsFragment extends PreferenceFragment {
         setPrefListeners();
     }
 
+    /**
+     *
+     */
     private void setPrefListeners() {
         Preference updatePref = findPreference("pref_comment_switch");
         if (android.os.Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {

+ 6 - 0
app/src/main/java/me/yoqi/app/wxredpacket/fragments/GeneralSettingsFragment.java

@@ -10,6 +10,9 @@ import me.yoqi.app.wxredpacket.R;
 import me.yoqi.app.wxredpacket.activities.WebViewActivity;
 import me.yoqi.app.wxredpacket.utils.UpdateTask;
 
+/**
+ *
+ */
 public class GeneralSettingsFragment extends PreferenceFragment {
     @Override
     public void onCreate(Bundle savedInstanceState) {
@@ -18,6 +21,9 @@ public class GeneralSettingsFragment extends PreferenceFragment {
         setPrefListeners();
     }
 
+    /**
+     *
+     */
     private void setPrefListeners() {
         // Check for updates
         Preference updatePref = findPreference("pref_etc_check_update");

+ 7 - 0
app/src/main/java/me/yoqi/app/wxredpacket/utils/ConnectivityUtil.java

@@ -4,7 +4,14 @@ import android.content.Context;
 import android.net.ConnectivityManager;
 import android.net.NetworkInfo;
 
+/**
+ * wifi工具
+ */
 public class ConnectivityUtil {
+    /**判断是否wifi
+     * @param context 全局Context
+     * @return true or false
+     */
     public static boolean isWifi(Context context) {
         ConnectivityManager cm =
                 (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

+ 9 - 4
app/src/main/java/me/yoqi/app/wxredpacket/utils/DownloadUtil.java

@@ -7,16 +7,21 @@ import android.os.Environment;
 
 import static android.content.Context.DOWNLOAD_SERVICE;
 
+
 /**
- * Created by Zhongyi on 8/1/16.
+ *下载工具
  */
 public class DownloadUtil {
+
+    /**下载队列
+     * @param url 下载链接
+     * @param context 全局Context
+     */
     public void enqueue(String url, Context context) {
-        DownloadManager.Request r = new DownloadManager.Request(Uri.parse(url));
+            DownloadManager.Request r = new DownloadManager.Request(Uri.parse(url));
         r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "Uber.apk");
         r.allowScanningByMediaScanner();
         r.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
         DownloadManager dm = (DownloadManager) context.getSystemService(DOWNLOAD_SERVICE);
         dm.enqueue(r);
-    }
-}
+    }}

+ 17 - 3
app/src/main/java/me/yoqi/app/wxredpacket/utils/HongbaoLogger.java

@@ -4,33 +4,47 @@ import android.content.Context;
 import android.database.sqlite.SQLiteDatabase;
 
 /**
- * Created by Zhongyi on 1/22/16.
+ * 接收红包日志管理
  */
 public class HongbaoLogger {
     private Context context;
     private SQLiteDatabase database;
 
     private static final int DATABASE_VERSION = 1;
-    private static final String DATABASE_NAME = "WeChatLuckyMoney.db";
+    private static final String DATABASE_NAME = "wxRedPacket.db";
     private static final String createDatabaseSQL = "CREATE TABLE IF NOT EXISTS HongbaoLog (id INTEGER PRIMARY KEY AUTOINCREMENT, sender TEXT, content TEXT, time TEXT, amount TEXT);";
 
+    /**构造函数
+     * @param context
+     */
     public HongbaoLogger(final Context context) {
         this.context = context;
         this.initSchemaAndDatabase();
     }
 
+    /**
+     * 初始化db数据库
+     */
     private void initSchemaAndDatabase() {
-        this.database = context.openOrCreateDatabase("WeChatLuckyMoney", Context.MODE_PRIVATE, null);
+        this.database = context.openOrCreateDatabase("wxRedPacket", Context.MODE_PRIVATE, null);
 
         this.database.beginTransaction();
         this.database.execSQL(createDatabaseSQL);
         this.database.endTransaction();
     }
 
+    /** 插入红包数据
+     * @param sender
+     * @param content
+     * @param amount
+     */
     public void writeHongbaoLog(String sender, String content, String amount) {
 
     }
 
+    /**
+     * 获取所有数据
+     */
     public void getAllLogs() {
 
     }

+ 26 - 1
app/src/main/java/me/yoqi/app/wxredpacket/utils/HongbaoSignature.java

@@ -4,12 +4,17 @@ import android.graphics.Rect;
 import android.view.accessibility.AccessibilityNodeInfo;
 
 /**
- * Created by Zhongyi on 1/21/16.
+ * 红包标志
  */
 public class HongbaoSignature {
     public String sender, content, time, contentDescription = "", commentString;
     public boolean others;
 
+    /**
+     * @param node
+     * @param excludeWords
+     * @return
+     */
     public boolean generateSignature(AccessibilityNodeInfo node, String excludeWords) {
         try {
             /* The hongbao container node. It should be a LinearLayout. By specifying that, we can avoid text messages. */
@@ -50,11 +55,18 @@ public class HongbaoSignature {
         }
     }
 
+    /**
+     * @return
+     */
     @Override
     public String toString() {
         return this.getSignature(this.sender, this.content, this.time);
     }
 
+    /**
+     * @param strings
+     * @return
+     */
     private String getSignature(String... strings) {
         String signature = "";
         for (String str : strings) {
@@ -65,14 +77,24 @@ public class HongbaoSignature {
         return signature.substring(0, signature.length() - 1);
     }
 
+    /**
+     * @return
+     */
     public String getContentDescription() {
         return this.contentDescription;
     }
 
+    /**
+     * @param description
+     */
     public void setContentDescription(String description) {
         this.contentDescription = description;
     }
 
+    /**
+     * @param node
+     * @return
+     */
     private String[] getSenderContentDescriptionFromNode(AccessibilityNodeInfo node) {
         int count = node.getChildCount();
         String[] result = {"unknownSender", "unknownTime"};
@@ -90,6 +112,9 @@ public class HongbaoSignature {
         return result;
     }
 
+    /**
+     * 清除红包标志
+     */
     public void cleanSignature() {
         this.content = "";
         this.time = "";

+ 13 - 1
app/src/main/java/me/yoqi/app/wxredpacket/utils/PowerUtil.java

@@ -5,12 +5,15 @@ import android.content.Context;
 import android.os.PowerManager;
 
 /**
- * Created by Zhongyi on 1/29/16.
+ * 锁屏唤醒
  */
 public class PowerUtil {
     private PowerManager.WakeLock wakeLock;
     private KeyguardManager.KeyguardLock keyguardLock;
 
+    /**构造函数
+     * @param context 全局Context对象
+     */
     public PowerUtil(Context context) {
         PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
         wakeLock = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP,
@@ -19,11 +22,17 @@ public class PowerUtil {
         keyguardLock = km.newKeyguardLock("HongbaoKeyguardLock");
     }
 
+    /**
+     *
+     */
     private void acquire() {
         wakeLock.acquire(1800000);
         keyguardLock.disableKeyguard();
     }
 
+    /**
+     *
+     */
     private void release() {
         if (wakeLock.isHeld()) {
             wakeLock.release();
@@ -31,6 +40,9 @@ public class PowerUtil {
         }
     }
 
+    /**
+     * @param isWake
+     */
     public void handleWakeLock(boolean isWake) {
         if (isWake) {
             this.acquire();