Я создал проект Android и преобразовал его в файл AAR (Android Resource). Я импортировал файл в новый проект.
Таким образом, есть один класс с именем CollectSensorData
, который является классом-одиночкой.
класс, как показано ниже:
package com.example.android.sensordata.Main;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import com.example.android.sensordata.localdatabase.DatabaseHelper;
import static android.content.Context.MODE_PRIVATE;
public class CollectSensorData {
@SuppressLint("StaticFieldLeak")
private static CollectSensorData instance;
static boolean flag;
private static Context mContext;
public static int freqlocaldb, freqserver;
public static SharedPreferences sharedpreferences;
public static String URL;
private CollectSensorData() {
}
public static CollectSensorData getInstance(Context context) {
if(instance==null) {
instance = new CollectSensorData();
}
mContext = context;
return instance;
}
public void onStartTrip(String Job_id, String Cab_Number, String Driver_ID, long time) {
String deviceModel = android.os.Build.MANUFACTURER + " " + android.os.Build.MODEL;
sharedpreferences = mContext.getSharedPreferences("trip", MODE_PRIVATE);
flag = true;
DatabaseHelper.tripinfo(Job_id, time, Cab_Number, Driver_ID, deviceModel);
Intent intent = new Intent(mContext, MyService.class);
mContext.startService(intent);
}
public void onEndTrip() {
flag = false;
Intent intent = new Intent(mContext, MyService.class);
mContext.stopService(intent);
}
public void setFreqency(int FrequencyforLocalDB, int FrequencyforServer) {
freqlocaldb = FrequencyforLocalDB;
freqserver = FrequencyforServer;
}
}
Существует строка, которая должна быть указана пользователем. Если строка не указана, указанные выше методы - onStartTrip
, onEndTrip
и setFrequency
не должны работать.
Как мне убедиться, что строка указана до вызова любого из методов?