2 xwm1993 xwm1993 于 2016.03.29 22:55 提问

联网后如何实现两部手机的远程控制

本人初学Android app 应用开发,现在想做一个app .当两部手机相互关联后,当一部手机丢失后,能一部手机能定位丢失的手机,并实现一些简单的远程控制操作

4个回答

caozhy
caozhy   Ds   Rxr 2016.03.29 23:53

不知道你是学生习作还是真的打算开发这么个软件,偷盗手机的人拿到手机的第一件事就是重新刷机了。最最起码也是拔掉里面的sim卡,根本也就不联网了,你还操作个毛。

deepbluemind
deepbluemind   2016.03.30 06:58

用两个类

第一个service类
public class AndroidLocationServices extends Service {

WakeLock wakeLock;

private LocationManager locationManager;

public AndroidLocationServices() {
// TODO Auto-generated constructor stub
}

@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}

@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();

PowerManager pm = (PowerManager) getSystemService(this.POWER_SERVICE);

wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "DoNotSleep");

// Toast.makeText(getApplicationContext(), "Service Created",
// Toast.LENGTH_SHORT).show();

Log.e("Google", "Service Created");

}

@Override
@Deprecated
public void onStart(Intent intent, int startId) {
// TODO Auto-generated method stub
super.onStart(intent, startId);

Log.e("Google", "Service Started");

locationManager = (LocationManager) getApplicationContext()
        .getSystemService(Context.LOCATION_SERVICE);

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
        5000, 5, listener);

}

private LocationListener listener = new LocationListener() {

@Override
public void onLocationChanged(Location location) {
    // TODO Auto-generated method stub

    Log.e("Google", "Location Changed");

    if (location == null)
        return;

    if (isConnectingToInternet(getApplicationContext())) {
        JSONArray jsonArray = new JSONArray();
        JSONObject jsonObject = new JSONObject();

        try {
            Log.e("latitude", location.getLatitude() + "");
            Log.e("longitude", location.getLongitude() + "");

            jsonObject.put("latitude", location.getLatitude());
            jsonObject.put("longitude", location.getLongitude());

            jsonArray.put(jsonObject);

            Log.e("request", jsonArray.toString());

            new LocationWebService().execute(new String[] {
                    Constants.TRACK_URL, jsonArray.toString() });
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub

}

@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub

}

@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub

}

};

@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();

wakeLock.release();

}

public static boolean isConnectingToInternet(Context _context) {
ConnectivityManager connectivity = (ConnectivityManager) _context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity != null) {
NetworkInfo[] info = connectivity.getAllNetworkInfo();
if (info != null)
for (int i = 0; i < info.length; i++)
if (info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}

}
return false;

}

}

第二个异步任务类

public class LocationWebService extends AsyncTask {

public LocationWebService() {
// TODO Auto-generated constructor stub
}

@Override
protected Boolean doInBackground(String... arg0) {

ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("location", arg0[1]));

HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(arg0[0]);
HttpParams httpParameters = new BasicHttpParams();

httpclient = new DefaultHttpClient(httpParameters);

try {
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

    HttpResponse response;
    response = httpclient.execute(httppost);
    StatusLine statusLine = response.getStatusLine();
    if (statusLine.getStatusCode() == HttpStatus.SC_OK) {

        Log.e("Google", "Server Responded OK");

    } else {

        response.getEntity().getContent().close();
        throw new IOException(statusLine.getReasonPhrase());
    }
} catch (Exception e) {
    e.printStackTrace();
}

return null;

}
}

lyhoo163
lyhoo163   Rxr 2016.03.30 06:59

实现联网,运程控件另一台手机。

1、另一台手机,植入木马程序。好听一点点是客户端程序。
2、木马程序运行,并联网。
3、木马程序还要防杀毒软件的封杀。
4、服务器端调用木马程序。

lx624909677
lx624909677   Ds   Rxr 2016.03.29 23:03

能实现定位的前提是,丢失的手机开机并且联网,能给另一端发送信号才行

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
兔子--两部手机怎么通过蓝牙连接
将两部手机看作是蓝牙的客户端和服务器,客户端要连接服务器端,首先要定位服务器端。因此作为服务器的手机需要设置可被搜索。 首先两部手机都要打开蓝牙,并且在一部手机的蓝牙设置里面打开“可检测属性”,一般会在120秒之内允许其他的蓝牙设备搜索到当前的手机,最后使用另外一部手机搜索周围的蓝牙设备。如果找到了可连接的蓝牙设备,需要选中该蓝牙设备并进行配对,这样两部手机就为连接做好了准备,但这时两部
用手机远程控制电脑
怎么用手机远程控制电脑 手机下载splashtop 根据app提示,在电脑端下载splashtop Streamer 注:如果要实现开机功能,需要主板支持 wake on LAN,并设置 http://blog.csdn.net/liuyukuan/article/details/53439118 上述链接来自liuyukuan的博客,介绍了wake工具(不是重点),并介绍了怎么在BIO...
iOS远程真机之非越狱iOS设备的远程控制实现原理
通过iOS设备控制PC可能较为常见,App Store也有不少类似的应用,但是通过PC控制iOS相信大家很难在网上找到解决方案,能找到的也大部分是需要依赖越狱来实现。       安卓提供了强大的adb工具,能轻松实现类似的功能。但iOS由于系统的封闭性,大部分功能非越狱无法逾越系统的权限。       今天给大家带来的是基于苹果官方提供的UI测试框架实现的非越狱机器远程控制实现原理。XCUITes
Fuhome如何用手机微信远程控制继电器,手机控制单片机设备,硬件不限,其实都一样的
开源-fuhome最新作品,手机微信远程控制单片机 继电器w5500+stm32+dht12温湿度传感器         最新作品,之前用的是ENC28J60做的开源单片机联网协议栈FuIP。最近用的w5500 网络芯片+stm32F103 MCU 进行控制设计,一经连接路由器可自动获取/固定 IP,同时自动连接 Fuhome 未来之家实验室服务器。进而可以使用 Fuhome 提供的手机 and
java打造手机远程控制电脑之详细教程
大家好!今天给大家说说怎么简单地用手机去控制手机,这里用到了tomcat+js+app inventor,其实也不是那么复杂,代码都很简单。先来看看效果图:http://img.blog.csdn.net/20160109124431043 http://img.blog.csdn.net/20160109124459568 http://img.blog.csdn.net/2016010
制作手机远程控制开关
移动无线手机网络的超远程遥控器,支持用户用手机远程控制水泵电机、设备电源开关,广告牌,景观灯等设备,短信、手机,电话均可控制,控制输出三路开关量,内置华为工业级模块,信号隔离。
你想跨互联网远程调试Android设备吗,推荐一个远程控制手机的免费软件
以前,常常碰到这样的烦恼问题:我们开发的App应用,明明自己测试好好的,部署到用户的安卓设备上之后,总是遇到种种奇怪而又不好找到原因的问题。虽然说Android系统硬件差异大,各个厂商的设备系统实现细节不尽相同,但作为App开发者,我们总不能把问题这么推掉吧,App要不断完善,Bug还是要解决不是。解决Bug的最好途径莫过于跟踪调试,分析日志输出啦。要用户把Ta的安卓设备寄来调试吗,No way!
(超高性价比)有了PLC上网神器,PLC远程监视,PLC远程监控,构建工业物联网很简单
嵌入式版本通讯协议支持:  MODBUS-RTU(施耐德全系列PLC、仪表)  MODBUS-TCP (施耐德带网口PLC、GE PLC、南大傲拓NA400、南大傲拓NA200、南瑞MB系列) 三菱FX2N/FX3U系列  OMRON HOSTLINK  西门子S7200 PPI  西门子S7300 MPI 西门子S71200以太网  西门子Smar
Socket实现两台手机通信,定向转发数据
最近要面试了,想练习一下网络编程吧,想想来搞搞实现太手机聊天功能吧,其实聊天功能有集成好的框架,有apache的mina框架,想要知道这个框架怎么用,看我的下一篇博客吧,现在我们开讲讲怎么用socket通信吧 首先,什么叫socket?字面意思叫 插座; 灯座; 窝,穴; [解] 眼窝,孔窝 网络用语叫套接字原理是基于tcp/ip 协议的一种通信手段, 下面来看我的客户端程序吧,首先新建一个j
智能家居手机APP远程智能控制家居设备详细代码
通过手机控制实现了家居的"智能化"