펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO

퍼미션은 INTERNET



public void DataSend() {

try{

url = new URI("http://192.168.0.20:8080/testWebapp/Receive.jsp");

new Thread() {

public void run() {

try {

HttpClient httpclient = new DefaultHttpClient();

HttpPost httpPost = new HttpPost(url);

ArrayList<BasicNameValuePair> nameValuePairs = new ArrayList<BasicNameValuePair>();

nameValuePairs.add(new BasicNameValuePair("mark_id", sendMarkId));

nameValuePairs.add(new BasicNameValuePair("store_name", sendName));

nameValuePairs.add(new BasicNameValuePair("latitude", sendLat));

nameValuePairs.add(new BasicNameValuePair("longitude", sendLng));

nameValuePairs.add(new BasicNameValuePair("comments", sendTip));

nameValuePairs.add(new BasicNameValuePair("kind", sendKind));

httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs, "utf-8"));

httpclient.execute(httpPost);

} catch (Exception e) {

e.printStackTrace();

}

}

}.start();

}catch(Exception e){

Log.e("fureun",e.toString());

}

}

펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO


GoogleMap gmap = ((SupportMapFragment) getSupportFragmentManager()

.findFragmentById(R.id.map)).getMap();


gmap.setOnMapLongClickListener(new OnMapLongClickListener() {

@Override

public void onMapLongClick(LatLng latLng) {

MarkerOptions markerOptions = new MarkerOptions();

markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.marker_3g));

markerOptions.position(latLng); //마커위치설정


gmap.animateCamera(CameraUpdateFactory.newLatLng(latLng));   // 마커생성위치로 이동

gmap.addMarker(markerOptions); //마커 생성

}

});



onCreat에 넣어주심됩니다.


요즘한창 v2공부하고있으니 궁금하신점 질문주시면 성심껏 알려드립니다


Android/WI-FI | Posted by 덩치 2013. 8. 5. 16:15

Wifi상태 체크 + 자동 연결해제

펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO


WifiChecker.zip


WifiManager , WifiInfo 를 이용해 와이파이 상태를 체크하고

신호세기가 10Mbps 이하로 내려가면 자동으로 와이파이를 비활성화 시키는 예제입니다.

주석은 따로 없습니다. 궁금하신점은 댓글남겨주세요.


자동으로 다른 와이파이 검색해서 연결을 변경해주면 더 좋으련만

어떤 클래스나 메소드를 사용해서 할 수 있는지를 몰라 구현은 못했습니다.

아시는분은 댓글좀 남겨주세요 ㅎㅎ

구현하는법 알아냈습니다. 궁금하시면 댓글로 메일남겨주세요 

적용 예시 : http://biig.tistory.com/15

소스반영은 안했습니다. (2013.10.23 수정)




package com.example.wifichecker;



import android.app.Activity;

import android.content.BroadcastReceiver;

import android.content.Context;

import android.content.Intent;

import android.content.IntentFilter;

import android.net.wifi.WifiInfo;

import android.net.wifi.WifiManager;

import android.os.Bundle;

import android.os.Handler;

import android.widget.TextView;

import android.widget.Toast;


public class MainActivity extends Activity {

WifiManager wifiManager,wifiManager2;

WifiInfo wifiInfo,wifiInfo2;

TextView tv;

int speed;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

tv = (TextView)findViewById(R.id.tv);

wifiManager = (WifiManager)getSystemService(WIFI_SERVICE);

wifiInfo = wifiManager.getConnectionInfo();

IntentFilter filter = new IntentFilter();

filter.addAction(wifiManager.WIFI_STATE_CHANGED_ACTION);

registerReceiver(wifiReceiver,filter);

}


private BroadcastReceiver wifiReceiver = new BroadcastReceiver() {

public void onReceive(Context context, Intent intent) {

if(wifiManager.getWifiState()==3){

hd.post(callback);

hd2.postDelayed(callback2, 10000);

}else{

hd.removeCallbacks(callback);

tv.setText("Wifi가 비활성화 상태입니다.");

}

}

};


Handler hd2 = new Handler();

public Runnable callback2 = new Runnable(){

public void run(){

hd2.postDelayed(this, 5000);

if(speed<10){

hd.removeCallbacks(callback);

hd2.removeCallbacks(callback2);

wifiManager.setWifiEnabled(false);

Toast.makeText(MainActivity.this, "Wifi 연결이 종료되었습니다.", Toast.LENGTH_SHORT).show();

tv.setText("Wifi가 비활성화 상태입니다.");

}

}

};

Handler hd = new Handler();

public Runnable callback = new Runnable(){

public void run() {

if(wifiManager.getWifiState()==3){

wifiManager2 = (WifiManager)getSystemService(WIFI_SERVICE);

wifiInfo2 = wifiManager2.getConnectionInfo();

String id = wifiInfo2.getSSID();

speed = (wifiInfo2.getLinkSpeed());

double aa = speed+0.0;

double aaa = aa/8.0;

String num = String.format("%.2f" , aaa);

double latency = wifiManager2.WIFI_MODE_FULL_HIGH_PERF;

String num2 = String.format("%.2f", latency);

String view = "Wifi Id : "+wifiInfo2.getSSID()+"\n"+"\n"+"Speed : "+num+"MBps" + "\n" +"\n"+ "Power : " + 

String.valueOf(wifiInfo2.getRssi()+"dBm"+"\n"+"\n"+"Power : "+num2+"ms");

tv.setText(view);

hd.postDelayed(this, 3000);

}else{

tv.setText("Wifi가 비활성화 상태입니다.");

hd.removeCallbacks(callback);

}

}

};

@Override

protected void onDestroy() {

// TODO Auto-generated method stub

super.onDestroy();

hd.removeCallbacks(callback);

hd2.removeCallbacks(callback2);

}

}