Tag: android

在android sdk中的networking事件的意图行动

我需要接收networking行为,如networking连接,断开等广播。我正在使用广播接收机为此目的。 任何人都可以告诉我,我需要为networking事件捕获哪些意图行动,现在按照我在互联网上的search我使用android.net.ConnectivityManager.CONNECTIVITY_ACTION 。 这是我的广播接收机类: import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; public class NetworkStateReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if (intent.getAction().equals( android.net.ConnectivityManager.CONNECTIVITY_ACTION)) { // do something.. } } } 而且我还添加了访问networking状态的权限: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 这里是我如何在清单文件中声明这个类 <receiver class=".NetworkStateReceiver" android:name=".NetworkStateReceiver"> <intent-filter> <action android:name="android.net.ConnectivityManager.CONNECTIVITY_ACTION" /> </intent-filter> </receiver> 如果我错了,请告诉我正确的意向操作,或者是否有其他方法来捕捉networking事件。

从Android发送JSON HTTP POST请求

我正在使用下面的代码发送一个HTTP POST请求发送一个对象到WCF服务。 这工作正常,但如果我的WCF服务还需要其他参数会发生什么? 我怎样才能从我的Android客户端发送它们? 这是我迄今写的代码: StringBuilder sb = new StringBuilder(); String http = "http://android.schoolportal.gr/Service.svc/SaveValues"; HttpURLConnection urlConnection=null; try { URL url = new URL(http); urlConnection = (HttpURLConnection) url.openConnection(); urlConnection.setDoOutput(true); urlConnection.setRequestMethod("POST"); urlConnection.setUseCaches(false); urlConnection.setConnectTimeout(10000); urlConnection.setReadTimeout(10000); urlConnection.setRequestProperty("Content-Type","application/json"); urlConnection.setRequestProperty("Host", "android.schoolportal.gr"); urlConnection.connect(); //Create JSONObject here JSONObject jsonParam = new JSONObject(); jsonParam.put("ID", "25"); jsonParam.put("description", "Real"); jsonParam.put("enable", "true"); OutputStreamWriter out = new OutputStreamWriter(urlConnection.getOutputStream()); […]

如何将活动带到前台(栈顶)?

在Android中,我定义了一个活动ExampleActivity。 当我的应用程序启动时,这个A活动的一个实例被创build,说它是A 当用户点击A一个button时,B的另一个实例B被创build。 现在任务堆栈是BA,B在顶部。 然后,用户点击B上的一个button,C-Activity的另一个实例,C被创build。 现在任务堆栈是CBA,C在顶部。 现在,当用户点击C上的一个button时,我希望应用程序将A带到前台,即使A成为任务堆栈ACB的顶部。 我如何编写代码来实现它?

如何更改操作栏大小

我想改变操作栏的大小。 我已经尝试了以下编码。 <style name="MyTheme" parent="@android:style/Theme.Holo.Light"> <item name="android:actionBarStyle">@style/CustomActionBar</item> </style> <style name="CustomActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> <!– <item name="android:background">@drawable/action_bar_style</item> –> <item name="android:actionBarSize">15dp</item> <item name="android:background">@drawable/header_bar</item> </style> 但是操作栏大小没有改变。 有另一种方法吗? 我正在使用API​​级别11。 谢谢。

AsyncTask和Looper.prepare()错误

我有以下代码 class OverlayTask extends AsyncTask<Void, Void, Void> { @Override public void onPreExecute() { if (sites != null) { myMapView.getOverlays().remove(sites); myMapView.invalidate(); sites = null; } } @Override public Void doInBackground(Void… unused) { grabShipsWithLocation(); return (null); } @Override public void onPostExecute(Void unused) { myMapView.getOverlays().add(sites); myMapView.invalidate(); isLoading = false; } } 这似乎在一些testing设备上正常工作,但我看到很多错误出现在开发控制台上。 我似乎无法解决为什么和在哪里把这个Looper.prepare()。 需要吗? java.lang.ExceptionInInitializerError at com.test.appname.FinderMain$1.gotLocation(FinderMain.java:286) at […]

Android – 在webview中的本地图像

我试图在我的webview中显示本地图像: String data = "<body>" + "<img src=\"file:///android_asset/large_image.png\"/></body>"; webview.loadData(data, "text/html", "UTF-8"); 此代码不显示任何内容,而不是: webview.loadUrl("file:///android_asset/large_image.jpg"); 这一个工作,但我需要有复杂的网页,而不仅仅是一个图片。 有任何想法吗 ?

Android Studio错误安装Gradle

当我尝试在Android Studio上构build项目时,出现以下错误: Compilation completed with 1 error and 0 warnings in 9 sec 1 error 0 warnings org.gradle.tooling.GradleConnectionException: Could not install Gradle distribution from 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.: Could not install Gradle distribution from 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'. 我能做些什么来解决它? 更新: 当我看错误日志时,我看到了这个: org.jetbrains.plugins.gradle.settings.GradleSettings cannot be cast to org.jetbrains.plugins.gradle.settings.GradleSettings: org.jetbrains.plugins.gradle.settings.GradleSettings cannot be cast to org.jetbrains.plugins.gradle.settings.GradleSettings

在Android中获取电池电量和状态

如何获得电池电量和状态(插入,放电,充电等)? 我研究了开发者文档,并且find了一个BatteryManager类。 但是它不包含任何方法,只是常量。 我怎样才能使用它?

BitmapFactory.decodeResource在Android 2.2中返回一个可变的位图,在Android 1.6中返回一个不可变的位图

我正在开发一个应用程序,并在运行Android 2.2的设备上进行testing。 在我的代码中,我使用了一个使用BitmapFactory.decodeResource检索的位图,并且可以通过对其调用bitmap.setPixels()进行更改。 当我在运行Android 1.6的朋友的设备上testing这个时,我在调用bitmap.setPixels遇到了IllegalStateException 。 在线文档说,当位图是不可变的时, IllegalStateException从这个方法抛出。 这个文档没有decodeResource任何有关decodeResource返回一个不可变的位图的信息,但是显然必须是这样的。 是否有一个不同的调用,我可以使一个可变的位图可靠地从一个应用程序资源,而不需要第二个Bitmap对象(我可以创build一个可变的一个相同的大小,并绘制到包装它的canvas,但是这将需要两个相等的位图大小使用了两倍的内存,我想要的)?

不能在AsyncTask中为ProgressDialog调用没有调用Looper.prepare()的线程内部的处理程序

我不明白为什么我得到这个错误。 我使用AsyncTask在后台运行一些进程。 我有: protected void onPreExecute() { connectionProgressDialog = new ProgressDialog(SetPreference.this); connectionProgressDialog.setCancelable(true); connectionProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); connectionProgressDialog.setMessage("Connecting to site…"); connectionProgressDialog.show(); downloadSpinnerProgressDialog = new ProgressDialog(SetPreference.this); downloadSpinnerProgressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); downloadSpinnerProgressDialog.setMessage("Downloading wallpaper…"); } 当我进入doInBackground()取决于条件I: […] connectionProgressDialog.dismiss(); downloadSpinnerProgressDialog.show(); […] 每当我尝试downloadSpinnerProgressDialog.show()我收到错误。 任何想法家伙?