我遇到了问题。
最近,android设备信息插入DB。 macaddr,ip,public ip,boot time ...但启动后我不知道,连接网络时间。
我想连接网络时间。
dataInsert是表名。
private SimpleDateFormat bootOnLan = new SimpleDateFormat(DBProxy.DateTimeFormat);
PreparedStatement statement = mConnection.prepareStatement(dataInsert);
statement.setString(1, bootOnLan.format(new Date(getOnLanTime())));
public static String getOnLanTime(){
Intent intent = null;
String action = intent.getAction();
NetworkInfo activeNetworkInfo = null;
Context context = BlackEyeActivity.getMainActivity();
WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
int iNetworkType = (activeNetwork == null) ? -1: activeNetwork.getType();
if(action.equals(ConnectivityManager.CONNECTIVITY_ACTION)){
ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
if(iNetworkType == connectivityManager.TYPE_ETHERNET){
return EthernetOnLan;
}
else if (iNetworkType == connectivityManager.TYPE_WIFI){
return EthernetOnLan;
}
else {
}
}
return EthernetOnLan;
}
这不是DB INSERT
我怎么能在android上以编程方式?
答案 0 :(得分:0)
你能否提出你的问题? 要了解设备的启动,
写清单:
<receiver android:name="com.prac.test.ServiceStarter">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
并在清单中添加权限:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
写一个接收意图的类:
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class ServiceStarter extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent i = new Intent("com.prac.test.MyPersistingService");
i.setClass(context, MyPersistingService.class);
context.startService(i);
}
}
在这里,您只需节省时间。
试试吧..这可能会有所帮助......