發表文章

目前顯示的是 8月, 2018的文章

mariaDB忘記密碼處理

圖片

2.載入JDBC語法3.建立CONNECTION物件4.

2. 載入JDBC語法: Class.forName(參數) 說明:參數內容是 "sun.jdbc.odbc.JdbcodbcDriver"這是套件路徑。 sun/jdbc/odbc/JdbcOdbcDriver.class 3.建位Connection物件 語法         DriverManager.getConnection(  參數    )         說明:參數內容是"jdbc:odbc:資料來源名稱" 4.建立statement物件(例:擬購物清單) 語法: connection物件.createStatement() 說明:1.物件的用途是傳地要執行的sql子句。 物件方法有: 1.execute(sql):回傳true或false 2.executeUpdate(sql):回傳受影響的筆數。 3.executeQuery(sql):回傳Resultset物件(查詢結果) 5.

設定odbc。

圖片
step 1 設定ODBC 方法一 a)開始>控制台>系統管理工具>資料來源ODBC b)系統資料來源:原名稱 c)新增 d)選擇"Microsoft Access Driver(*.mdb,*accdb); 方法二 a) C:\Windows\SysWow64\odbcad32.exe b)系統資料來源:原名稱 c)新增 d)選擇"Microsoft Access Driver(*.mdb,*accdb); e)完成 f)輸入資料來源名稱  如Lulu g)選取Access檔案的路徑與檔名 step2 載入JDBC  Driver 語法 Class.forName(參數) 說明:"sun.jdbc.odbc.JdbcOdbc Driver"   sun    |-jdbc    |   |-odbc    |   |   |-JdbcOdbc   step3 建立connection 物件 語法: DriverManager.getConnection(參數) 說明:參數內容是 "Jdbc:odbc:資料來源名稱"  ex:Lulu step4 建立 statement物件    語法: Connection 物件.createStatement();    說明 1.物件的用途是傳遞要執行的SQL 子句         2.物件方法有 (1) execute (SQL)     :回傳true/false              (2) executeUpdate(SQL):回傳受影響的筆數 (3) executeQuery(SQL) :回傳resultSet 物件(查詢結果)    

資料庫32範例:小戴修正。

package ex32.MyHotline;         import android.app.Activity;         import android.content.ContentValues;         import android.content.Context;         import android.database.Cursor;         import android.database.sqlite.SQLiteDatabase;         import android.os.Bundle;         import android.support.v4.widget.SimpleCursorAdapter;         import android.view.View;         import android.widget.AdapterView;         import android.widget.Button;         import android.widget.EditText;         import android.widget.ListView; public class MainActivity extends Activity implements AdapterView.OnItemClickListener {     static final String DB_NAME = "HotlineDB";     static final String TB_NAME = "hotlist";   ...

一維陣列顯示在listview,利用ArrayAdapter

package com.jbuduoo.test001; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; import android.widget.SimpleCursorAdapter; public class MainActivity extends AppCompatActivity {     ArrayAdapter<String> adapter;     ListView lv;     String[] A={"1","2","3","4","5"};     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         lv =findViewById(R.id.lv);         adapter = new ArrayAdapter<String>(this, android.R.layout.simpl...

廣播接收器、

AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"       package="ex37.BroadcastReceiver_2"       android:versionCode="1"       android:versionName="1.0">     <uses-sdk android:minSdkVersion="14" />     <application android:icon="@drawable/icon" android:label="@string/app_name">         <activity android:name="ex37.BroadcastReceiver_2.BroadcastReceiver_2"                   android:label="@string/app_name">             <intent-filter>                 <action android:name="android.intent.action.MAIN" />                 <category android:name="android.intent.category.LAUNCHER" />           ...

範例35:狀態列與訊息提醒,設定振動

package ex36.Notification_2; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.view.View; public class Notification_2 extends Activity {     private static final int NOTIF_ID = 1;     @Override     public void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);     }     // Button元件的事件處理 - 顯示提醒訊息     @SuppressWarnings("deprecation")     public void btn1_Click(View view)     {         // 取得NotificationManager系統服務         NotificationManager notif = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);        ...

狀態列與訊息提醒notification manager

第一頁 package ex35.Notification_1; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Intent; import android.os.Bundle; import android.view.View; public class Notification_1 extends Activity{     private static final int NOTIF_ID = 1;     @Override     public void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);     }     // Button元件的事件處理 - 顯示提醒訊息     @SuppressWarnings("deprecation")     public void btn1_Click(View view)     {         // 取得NotificationManager系統服務         NotificationManager notif = (NotificationManager)                          ...

eclipse 安裝studio,再安裝sdb

在help/install/貼上網址: https://dl-ssl.google.com/android/eclipse/ 安裝sdk 解壓縮sdk.zip window/preferences/android brow....換成sdk windows/vdm/device Definitions/creat device,設定cpu到skin,都設定第一個。

移除標題欄修改 style.xml 檔案,設定為 NoActionBar

< resources > < style name = " AppTheme " parent = " Theme.AppCompat.NoActionBar " > <item name= "colorPrimary" >@color/colorPrimary</item> <item name= "colorPrimaryDark" >@color/colorPrimaryDark</item> <item name= "colorAccent" >@color/colorAccent</item> </ style > </ resources > 資料來源: https://jerrynest.io/app-android-webview/

維尼的需求,上面可以輸入網址,中間開網站,下面可以輸入內容,可存檔等等。用webView及intent發送mail

package com.jbuduoo.myapplication; import android.content.Intent; import android.net.Uri; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.webkit.WebChromeClient; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.EditText; public class MainActivity extends AppCompatActivity {     WebView wv;     EditText editText,editText2;     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         editText=findViewById(R.id.editText);         editText2=findViewById(R.id.editText2);         wv =findViewById(R.id.wv);         wv.setWebViewClient(new WebViewClient());        // 建立及使用 WebViewC...

數字換成加#,###格式

 數字轉換成金額格式. //運用DecimalFormat制定好金額顯示格式,每三位數顯示逗號 DecimalFormat mDecimalFormat = new DecimalFormat("#,###"); int num = 12345;//如果數字型態為int String text = mDecimalFormat.format((int)num);//在format裡轉型成double // text印出結果為 : 12,345 //如果數字型態為String String str = "12345"; String text = mDecimalFormat.format(Double.parseDouble(str));//在format裡轉型成double // text印出結果為 : 12,345

GPS、緯度、經度、精確度、標高、時間、速度、方位

package com.LocationGPS; import android.app.Activity; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.location.LocationProvider; import android.os.Bundle; import android.util.Log; import android.widget.TextView; public class LocationGPS extends Activity { private LocationManager mLocationManager; //LocationGPS主程式,實作一個LocationManager物件mLocationManager     @Override     public void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);         mLocationManager = (LocationManager) getSystemService(LOCATION_SERVICE);         mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mLocationListener);     TextView mTextView08 = (TextView)findViewById(R.id.TextView08);      mTex...

匿名實作與目前的作法

        implement OnclickListener  介面 buttonEmail.setOnClickListener(this) ;  監聽器 方法 public void onClick(View view) {   //發送mail Uri uri=Uri.parse("mailto:ccc@nqu.edu.tw"); Intent i=new Intent(Intent.ACTION_SENDTO,uri); startActivity(i); } 匿名實作         buttonEmail.setOnClickListener(new Button.OnClickListener() {             public void onClick(View view) {   //發送mail                 Uri uri=Uri.parse("mailto:ccc@nqu.edu.tw");                 Intent i=new Intent(Intent.ACTION_SENDTO,uri);                 startActivity(i);             }         });

Intent 的使用功能、打開網頁、發送mail、打電話、拍照、打開地圖、打開圖片、打開網頁的儲存空間

package ccc.test; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.provider.MediaStore; import android.provider.Contacts.People; import android.view.View; import android.widget.Button; public class IntentTest extends Activity {     /** Called when the activity is first created. */     @Override     public void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.main);         Button buttonUrl = (Button) findViewById(R.id.ButtonUrl);         Button buttonEmail = (Button) findViewById(R.id.ButtonEmail);         Button buttonTel = (Button) findViewById(R.id.ButtonTel);         Button buttonCamera = (Button) findViewById(R.id.ButtonCamera);         Button buttonGMap ...

activeity 生命週期

package com.ActivityLifeCycle; import android.app.Activity; import android.content.SharedPreferences; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast; public class ActivityLifeCycle extends Activity { public static final String MYPREFSID = "MyPrefs001"; public static final int actMode = Activity.MODE_PRIVATE; EditText txtMsg; Button btnFinish; TextView txtToDo; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); txtMsg = (EditText) findViewById(R.id.txtMsg); //updateFromSavedState_IfNeeded(); txtToDo = (TextView) findViewById(R.id.txtToDo); String msg = "Instructions:                                 \n " + "0. New instance (...

設定googel金鑰

找這一段文字。 http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_05.png 啟動瀏覽器在網址列貼上前一個步驟複製的網址,使用Google的帳號登入以後,勾選同意服務條款,選擇「同意並繼續」 http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_06.png 6. 網頁右下角顯示處理中的活動訊息: http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_07.png 7. 在出現的對話框選擇「建立」: http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_08.png 8. 建立完成後,在「API金鑰」後面的一串內容,就是為已經申請好的Google Maps API Key。選擇並複製API金鑰的內容: http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_09.png 9. 回到Android Studio,在googlemapsapi.xml檔案,找到「YOURKEYHERE」的位置: http://www.codedata.com.tw/wp-content/uploads/2015/04/AndroidTutorial5_04_02_10.png 10. 把第八個步驟複製的API金鑰貼上與覆蓋「YOURKEYHERE」:

不錯的android 論壇,有許多好文章,http://www.codedata.com.tw/search.php?kw=android&p=3

打開google map

java:MainActivity: package com.example.googlemap; import android.os.Bundle; import android.app.Activity; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity { private static final String MAP_URL = "file:///android_asset/map_v3.html"; private WebView webView;  @Override  /** Called when the activity is first created. */  public void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    setupWebView();  }  /** Sets up the WebView object and loads the URL of the page **/  private void setupWebView(){    webView = (WebView) findViewById(R.id.webview01);    webView.getSettings().setJavaScriptEnabled(true);//啟用Webview的JavaScript功能    webView.setWebViewClient(new WebViewClient());    webView.loadUrl(MAP_URL);  } } assets:map_v3.htm...

重新整理當前的頁面onCreate(null);

重新整理當前activity界面數據(手動刷新): 在activity類下新增一個refresh()方法: public void refresh() { onCreate(null); }

心算練習:連結到第二頁、傳參數、取得傳入的資料、toast、介面OnItemClickListener

第一頁 package com.jbuduoo.myapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.ArrayAdapter; import android.widget.ListView; public class MainActivity extends AppCompatActivity {     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);     }     public void button(View v){         Intent it = new Intent(this, Main2Activity.class); //建立 Intent 並設定目標 Activity         it.putExtra("數字", 100);      //附加編號         startActivity(it); // 啟動 Intent 中的目標     }     public void button1(View v){         Intent it = new Intent(this, Main2Activity.class); //建立 Inten...

範例32資料庫

package ex32.MyHotline; import android.app.Activity; import android.content.ContentValues; import android.content.Context; import android.content.Intent; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.net.Uri; import android.os.Bundle; import android.support.v4.widget.SimpleCursorAdapter; import android.view.View; import android.widget.AdapterView; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; public class MainActivity extends Activity implements AdapterView.OnItemClickListener {     static final String DB_NAME = "HotlineDB";     static final String TB_NAME = "hotlist";     static final int MAX = 8;     static final String[] FROM = new String[]{"name", "phone", "email"};     final String tag = MainActivity.class.getSimpleName();     SQLiteDatabase db;     Cursor cur;     SimpleCursorAdapte...

android,如何匯入資料到手機的資料庫中

步驟一: file/project Structure複製sdk位置 貼到任一資料夾 選擇tools裡的monitor.bat 會出現錯誤訊息,但是正常的。 開啟file explorer,找出data/data/ex32/database/的資料庫 匯出。 (裡面有permissions裡的訊息-rwxrwx--x的意思為。 第一個-是檔案的意思,若是d則為目錄。 第二個rwx是個人的意思,r是讀,w是寫,進入。 第三個rwx是群組的意思,r是讀,w是寫,進入。 第四個--x是其他人的意思,r是讀,w是寫,進入。 步驟二: 利用SQLiteDatabaseBrowserPortable, 來開啟匯出的資料庫 加入或、匯入資料後存檔 步驟三: 再匯入資料到手機資料庫裡。

範例31、資料庫新增修改

package ex31.HelloCursor; import android.app.Activity; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.widget.TextView; public class MainActivity extends Activity {     static final String db_name = "testDB";    // 資料庫名稱     static final String tb_name = "test";        // 資料表名稱     SQLiteDatabase db;    //資料庫     @Override     protected void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         // 開啟或建立資料庫         db = openOrCreateDatabase(db_name, Context.MODE_PRIVATE, null);         //db.delete(tb_name, null,null);       ...

[筆記] AndroidManifest.xml 權限設定

http://kai-fresh.com/androidmanifest_xml/

第28個練習, webview工作

package ex28.BetterWebView; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.Window; import android.webkit.WebChromeClient; import android.webkit.WebView; import android.webkit.WebViewClient; public class MainActivity extends Activity {     WebView wv;     @Override     protected void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);         getWindow().requestFeature(Window.FEATURE_PROGRESS);  // 在標題欄加上進度功能         setContentView(R.layout.activity_main);         wv = (WebView) findViewById(R.id.wv);         wv.getSettings().setJavaScriptEnabled(true);    // 啟用 JavaScript         wv.getSettings().setBuiltInZoomControls(true);    // 啟用縮放功能         wv.invokeZoomPicker();...

android,更改標題名稱,及圖片。

在app/mainifests/AndroidManifest.xml中的。 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"     package="com.example.asus.myapplication">     <application         android:allowBackup="true"         android:icon="@mipmap/ic_launcher"    //改圖片         android:label="@string/app_name"         android:roundIcon="@mipmap/ic_launcher_round"    //改圖片         android:supportsRtl="true"         android:theme="@style/AppTheme">         <activity android:name=".MainActivity">             <intent-filter>                 <action android:name="android.intent.action.MAIN" />                 <category andro...

《Android》『Intent』- 透過 Intent 切換 Activity 並利用 Bundle 傳送參數-

這篇不錯。 https://xnfood.com.tw/android-intent-bundle/

練習25,備忘錄,可儲存。

第二頁 package ex25.Memo2; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.widget.EditText; import android.widget.TextView; public class Edit extends Activity {     TextView txv;     EditText edt;     @Override     protected void onCreate(Bundle savedInstanceState)     {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_edit);         Intent it = getIntent();               //取得傳入的 Intent 物件         txv = (TextView) findViewById(R.id.textView1);         String s = it.getStringExtra("備忘");  //讀出名為 "備忘" 的 String 資料         txv.setText(s.substring(0, 2));                 //在畫面左上角顯示編號     ...