我有一個基本的登錄屏幕的平板電腦用戶將登錄到對Android設備的MAC地址,我想在那個特定的設備的MAC地址屏幕上的應用程序啓動時。我如何在TextView中顯示,當應用程序開始
後來,當我學習了更多關於Android開發的知識,並且我學習速度很慢,我想通過RESTful Web服務插入用戶名,登錄時間和MAC地址到數據庫。但現在我只是試圖顯示MAC地址。
我發現一些代碼,獲得來自WIFI經理的MAC地址,你會在下面我的代碼看,並把它放在一個方法。看起來,當我在onCreate方法中調用這個方法的應用程序炸彈。什麼是正確的工作流程?我應該從onCreate()方法中調用showMACAddress()嗎?它應該在嘗試/抓住?
BTW我對我的7英寸平板電腦肯頓與Android 4.0作爲我工作的這個測試,我已經在Android清單文件的應用程序只有橫向方向規定。 預先感謝您。
這裏是我的java類
package za.co.crcode.Inspector;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.widget.TextView;
public class DeviceLogin extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_device_login);
showMACAddress();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_device_login, menu);
return true;
}
public void showMACAddress(){
WifiManager wifiMan = (WifiManager) this.getSystemService(
Context.WIFI_SERVICE);
WifiInfo wifiInf = wifiMan.getConnectionInfo();
String macAddr = wifiInf.getMacAddress();
TextView loginDeviceMACAddress = (TextView)findViewById(R.id.LoginDeviceMACAddress);
CharSequence macAddy = (String) macAddr.toString();
loginDeviceMACAddress.setText(macAddy);
}
}
這裏是我的Android GUI XML
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".DeviceLogin" >
<LinearLayout
android:id="@+id/LoginFieldsLayoutLeft"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerVertical="true"
android:layout_marginTop="5dp"
android:layout_marginLeft="50dp"
android:gravity="left"
android:orientation="vertical" >
<TextView
android:id="@+id/LoginScreenHeading"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="20dp"
android:text="@string/loginScreenHeading"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/LoginFirstName"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/loginFirstNameHint"
android:inputType="textPersonName"
android:text="@string/loginFirstName" />
<EditText
android:id="@+id/LoginLastName"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/loginLastNameHint"
android:inputType="textPersonName"
android:text="@string/loginLastName" />
<EditText
android:id="@+id/LoginEmployeeID"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/loginEmployeeIDHint"
android:inputType="number"
android:text="@string/loginEmployeeID" />
<EditText
android:id="@+id/loginPassword"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="10dp"
android:ems="10"
android:hint="@string/loginPasswordHint"
android:inputType="textPassword" >
</EditText>
<TextView
android:id="@+id/LoginMACAddressLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:text="@string/LoginMACAddressLabel"
android:textAppearance="?android:attr/textAppearanceLarge" />
<TextView
android:id="@+id/LoginDeviceMACAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:text="@string/LoginMACAddress"
android:textAppearance="?android:attr/textAppearanceLarge" />
</LinearLayout>
<LinearLayout
android:id="@+id/LoginFieldsLayoutRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="75dp"
android:orientation="vertical" >
<ImageView
android:id="@+id/LoginIdPic"
android:contentDescription="@string/EmployeeImage"
android:layout_width ="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:maxWidth="200dp"
android:maxHeight="200dp"
android:scaleType="fitCenter"
android:src="@drawable/idpic" >
</ImageView>
<Button
android:id="@+id/LoginScreenButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/loginButtonText"
android:layout_gravity="center" />
</LinearLayout>
</RelativeLayout>
這裏是我的strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Inspector</string>
<string name="hello_world">Hello World!</string>
<string name="menu_settings">Settings</string>
<string name="loginScreenHeading">Device Login</string>
<string name="loginFirstName">First Name</string>
<string name="loginFirstNameHint">Enter your first name</string>
<string name="loginLastName">Last Name</string>
<string name="loginLastNameHint">Enter your last name</string>
<string name="loginEmployeeID">Employee ID</string>
<string name="loginEmployeeIDHint">Enter your employee ID</string>
<string name="loginPasswordHint">Password</string>
<string name="LoginMACAddressLabel">Device ID</string>
<string name="LoginMACAddress">00:00:00:00</string>
<string name="loginButtonText">Login</string>
<string name="EmployeeImage">Employee_image</string>
</resources>
請訪問我們的常見問題。 –