Commit b05534a6 by cuiliang.shi

0.6 闹钟设置 打开相机 应用新增 信息上传用AsyncTask

1 parent 66d31fcd
...@@ -15,8 +15,8 @@ android { ...@@ -15,8 +15,8 @@ android {
applicationId "com.toscl.turingos" applicationId "com.toscl.turingos"
minSdkVersion 15 minSdkVersion 15
targetSdkVersion 22 targetSdkVersion 22
versionCode 4 versionCode 6
versionName "0.4" versionName "0.6"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
ndk { ndk {
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.CALL_PHONE" /> <uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
<application <application
android:persistent="true" android:persistent="true"
......
...@@ -8,6 +8,8 @@ import android.content.pm.PackageManager; ...@@ -8,6 +8,8 @@ import android.content.pm.PackageManager;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.drawable.AnimationDrawable; import android.graphics.drawable.AnimationDrawable;
import android.media.AudioManager; import android.media.AudioManager;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Build; import android.os.Build;
import android.os.Handler; import android.os.Handler;
import android.os.Message; import android.os.Message;
...@@ -135,6 +137,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -135,6 +137,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
"按下OK键陪我说话,你可以和我说:\"苹果的英文是什么?\"", "按下OK键陪我说话,你可以和我说:\"苹果的英文是什么?\"",
"按下OK键给我指令,你可以和我说:\"来首好听的歌。\"", "按下OK键给我指令,你可以和我说:\"来首好听的歌。\"",
"按下OK键给我指令,你可以和我说:\"101乘以125等于多少。\"", "按下OK键给我指令,你可以和我说:\"101乘以125等于多少。\"",
"按下OK键给我指令,你可以和我说:\"定一个早上8点的闹钟。\"",
}; };
int index = (int) (Math.random()*(helpInfo.length-1)); int index = (int) (Math.random()*(helpInfo.length-1));
...@@ -183,15 +186,18 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -183,15 +186,18 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
// Snackbar.with(this).text("正在播放中...").duration(300).show(this); // Snackbar.with(this).text("正在播放中...").duration(300).show(this);
} }
private void uploadThePhoneInfoToTuring() { class UpdateMessageTask extends AsyncTask{
@Override
protected Object doInBackground(Object[] objects) {
AppAndContactsBean appAndContactsBean = new AppAndContactsBean(); AppAndContactsBean appAndContactsBean = new AppAndContactsBean();
if (!PreferencesUtil.getInstance(mContext).getBoolean("is_uploaded_contact_2", false)) { if (!PreferencesUtil.getInstance(mContext).getBoolean("is_uploaded_phone_info", false)) {
Map<String, String> appMap = SkillsSlotUtil.queryFilterAppInfo(MainActivity.this); Map<String, String> appMap = SkillsSlotUtil.queryFilterAppInfo(MainActivity.this);
appAndContactsBean.setAppsMap(appMap); appAndContactsBean.setAppsMap(appMap);
PreferencesUtil.getInstance(mContext).putBoolean("is_uploaded_contact_2", true);
} }
Map<String, String> contactMap = SkillsSlotUtil.getContacts(mContext); Map<String, String> contactMap = SkillsSlotUtil.getContacts(mContext);
...@@ -201,6 +207,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -201,6 +207,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
@Override @Override
public void onSuccess(String result) { public void onSuccess(String result) {
Log.d(TAG, "uploadAppsAndContacts.onSuccess.result:" + result); Log.d(TAG, "uploadAppsAndContacts.onSuccess.result:" + result);
PreferencesUtil.getInstance(mContext).putBoolean("is_uploaded_phone_info", true);
} }
@Override @Override
...@@ -213,6 +220,12 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -213,6 +220,12 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
} }
}); });
return null;
}
}
private void uploadThePhoneInfoToTuring() {
UpdateMessageTask mUploadTask = new UpdateMessageTask();
mUploadTask.execute();
} }
private void getWelcome() { private void getWelcome() {
...@@ -368,6 +381,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -368,6 +381,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
ttsSequenceList.add("我是" + getString(R.string.app_name) + ",有什么可以帮你的吗"); ttsSequenceList.add("我是" + getString(R.string.app_name) + ",有什么可以帮你的吗");
readTheInfo(ttsSequenceList); readTheInfo(ttsSequenceList);
uploadThePhoneInfoToTuring(); uploadThePhoneInfoToTuring();
} }
...@@ -616,15 +630,48 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -616,15 +630,48 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
} catch (Exception e) { } catch (Exception e) {
} }
/* String[] eccEntry = {"112", "120", "119", "911", "110", "118", "000", "999"};
for (String ecc : eccEntry) {
if (ecc.equals(phoneNum)){
handleMyTips("紧急号码请手动拨出");
try {
Thread.sleep(2500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}*/
if (!phoneNum.equals("")) { if (!phoneNum.equals("")) {
ApiResultCode.callPhone(phoneNum, context); ApiResultCode.callPhone(phoneNum, context);
} else { } else {
handleMyTips("您的通讯录中没有该联系人"); handleMyTips("您的通讯录中没有该联系人");
} }
break; break;
case 200710:
try {
String time = intent.getParameters().getAsJsonObject().get("time").getAsString();
Log.d(TAG, "startDate:" + time);
String[] timeArr = time.split(":");
SkillsSlotUtil.setSystemAlarmClock(mContext, "闹钟", Integer.parseInt(timeArr[0]), Integer.parseInt(timeArr[1]));
} catch (Exception e) {
} }
break;
case 200501:
try{
ApiResultCode.doStartApplicationWithPackageName("com.mediatek.camera/com.mediatek.camera.CameraLauncher", context);
}catch (Exception e){
handleMyTips("相机启动失败");
} }
@SuppressLint("HandlerLeak") break;
default:
break;
}
}
private Handler mLoadToastHandler = new Handler(){ private Handler mLoadToastHandler = new Handler(){
@Override @Override
public void handleMessage(Message msg) { public void handleMessage(Message msg) {
...@@ -657,6 +704,8 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe ...@@ -657,6 +704,8 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
readTheInfo(ttsSequenceList); readTheInfo(ttsSequenceList);
} }
break; break;
default:
break;
} }
} }
}; };
......
...@@ -7,16 +7,32 @@ import android.content.pm.PackageInfo; ...@@ -7,16 +7,32 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo; import android.content.pm.ResolveInfo;
import android.net.Uri; import android.net.Uri;
import android.util.Log;
import java.util.ArrayList;
import java.util.List; import java.util.List;
public class ApiResultCode { public class ApiResultCode {
private static String TAG = "ApiResultCode"; private static String TAG = "ApiResultCode";
public static void callPhone(String phoneNum, Context context) { public static void callPhone(String phoneNum, Context context) {
Log.d(TAG, "callPhone: phoneNum: " + phoneNum);
String[] eccEntry = {"112", "120", "119", "911", "110", "118", "000", "999", "122"};
Intent intent = new Intent(Intent.ACTION_CALL); Intent intent = new Intent(Intent.ACTION_CALL);
for (String ecc : eccEntry) {
if (ecc.equals(phoneNum)){
intent = new Intent(Intent.ACTION_DIAL);
// android.intent.action.DIAL dat=tel:x pkg=com.sprd.simple.launcher cmp=com.sprd.simple.launcher/com.nb.dq.calllog.CallDialpadActivity
Uri data = Uri.parse("tel:" + 112);
intent.setData(data);
context.startActivity(intent);
return;
}
}
Uri data = Uri.parse("tel:" + phoneNum); Uri data = Uri.parse("tel:" + phoneNum);
intent.setData(data); intent.setData(data);
context.startActivity(intent); context.startActivity(intent);
...@@ -24,6 +40,7 @@ public class ApiResultCode { ...@@ -24,6 +40,7 @@ public class ApiResultCode {
public static void doStartApplicationWithPackageName(String packageName, Context context){ public static void doStartApplicationWithPackageName(String packageName, Context context){
Log.d(TAG, "doStartApplicationWithPackageName, packageName: " + packageName);
if (packageName.contains("/")){ if (packageName.contains("/")){
Intent intentUsb = new Intent(); Intent intentUsb = new Intent();
intentUsb.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intentUsb.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
......
...@@ -10,6 +10,8 @@ import android.content.pm.ResolveInfo; ...@@ -10,6 +10,8 @@ import android.content.pm.ResolveInfo;
import android.database.Cursor; import android.database.Cursor;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.provider.AlarmClock;
import android.provider.ContactsContract; import android.provider.ContactsContract;
import android.util.Log; import android.util.Log;
...@@ -130,6 +132,12 @@ public class SkillsSlotUtil { ...@@ -130,6 +132,12 @@ public class SkillsSlotUtil {
appMap.put("通话记录", "com.sprd.simple.launcher/dx.com.contactforlaunch.ui.CallCenterActivity"); appMap.put("通话记录", "com.sprd.simple.launcher/dx.com.contactforlaunch.ui.CallCenterActivity");
appMap.put("相机", "com.mediatek.camera/com.mediatek.camera.CameraLauncher"); appMap.put("相机", "com.mediatek.camera/com.mediatek.camera.CameraLauncher");
appMap.put("最美天气", "com.icoolme.android.weather");
appMap.put("抖音", "com.ss.android.ugc.aweme");
appMap.put("拨号", "com.sprd.simple.launcher/com.nb.dq.calllog.CallDialpadActivity");
appMap.put("电话", "com.sprd.simple.launcher/com.nb.dq.calllog.CallDialpadActivity");
//mlistAppInfo = appInfos; //mlistAppInfo = appInfos;
return appMap; return appMap;
} }
...@@ -188,5 +196,27 @@ public class SkillsSlotUtil { ...@@ -188,5 +196,27 @@ public class SkillsSlotUtil {
} }
} }
} }
public static boolean setSystemAlarmClock(Context context, String message, int hour, int minute) {
if (Build.VERSION.SDK_INT < 9) {
return false;
}
Intent intent = new Intent(AlarmClock.ACTION_SET_ALARM);
intent.putExtra(AlarmClock.EXTRA_MESSAGE, message);
intent.putExtra(AlarmClock.EXTRA_HOUR, hour);
intent.putExtra(AlarmClock.EXTRA_MINUTES, minute);
if (Build.VERSION.SDK_INT >= 11) {
intent.putExtra(AlarmClock.EXTRA_SKIP_UI, true);
}
if (Build.VERSION.SDK_INT >= 19) {
intent.putExtra(AlarmClock.EXTRA_VIBRATE, true);
}
try {
context.startActivity(intent);
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
} }
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!