小编Sun*_*ike的帖子

广播接收器调用两次

尝试检查我的应用程序中的Internet连接.我的清单有一个代码:

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
        <receiver android:name=".MyReceiver" >
        <intent-filter>
            <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
        </intent-filter>
    </receiver>
Run Code Online (Sandbox Code Playgroud)

并且有一个句柄类:

public class MyReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    if(intent.getAction() != null && intent.getAction().equals("android.net.conn.CONNECTIVITY_CHANGE"));
    {
        Log.d("myLogs", "Network connectivity change");
        if (intent.getExtras() != null) {
            NetworkInfo ni = (NetworkInfo) intent.getExtras().get(
                    ConnectivityManager.EXTRA_NETWORK_INFO);
            if (ni != null && ni.getState() == NetworkInfo.State.CONNECTED) {
                Log.i("myLogs", "Network " + ni.getTypeName() + " connected");
            }
        }
        if (intent.getExtras().getBoolean(
                ConnectivityManager.EXTRA_NO_CONNECTIVITY, Boolean.FALSE)) {
            Log.d("myLogs", "There's no network connectivity"); …
Run Code Online (Sandbox Code Playgroud)

connection android broadcastreceiver

11
推荐指数
1
解决办法
3848
查看次数

带有默认值的 Kotlin-moshi 代码生成继承

如果我有一个开放类并从中继承了数据类,则 Kotlin-moshi 代码生成器会跳过默认值。这是预期的行为吗?如何让 moshi-kotlin 解析所有值,包括超类的默认值?

@JsonClass(generateAdapter = true)
data class B(val bar: String) : A(foo = "foo")

@JsonClass(generateAdapter = true)
open class A(val foo: String)

val b = B("bar")
Run Code Online (Sandbox Code Playgroud)

adapter.toJson(b)打印{"bar":"bar"}没有通道字段。

android kotlin moshi

6
推荐指数
1
解决办法
405
查看次数

如何检查kotlin中的lambda空虚

如何检查Kotlin中lambda是否为空?例如,我有签名之类的

onError:(Throwable) -> Unit = {}
Run Code Online (Sandbox Code Playgroud)

我怎么能有不同的是它的默认值来自正文或应用于此功能的值?

lambda android function kotlin

4
推荐指数
2
解决办法
866
查看次数

Android私密样式使用

试图继承Widget.TextView.ListSeparator风格,但现在aapt不允许这样做:

找不到与给定名称'Widget.TextView.ListSeparator匹配的资源

因为谷歌把它变成了私有的.但是我如何组合两种样式:ListSeparator和margin?

风格1

<style name="settings_plain_text">
<item name="android:layout_marginTop"> 10sp </item>
<item name="android:layout_marginBottom"> 10sp </item>
<item name="android:textSize"> 18sp </item>
Run Code Online (Sandbox Code Playgroud)

风格2

style="?android:attr/listSeparatorTextViewStyle"
Run Code Online (Sandbox Code Playgroud)

xml android styles

3
推荐指数
1
解决办法
1827
查看次数

不使用get()方法从AsyncTask返回值

我正在尝试从DoInBackground中的asynctask返回值,但调用get()方法会冻结我的UI.如何将代码重新编写为回调方法?:

public class GetUrlDataTask extends AsyncTask<String, Integer, String> {
String response;
HttpUtils util;
@Override
protected String doInBackground(String... params) {
    try {
        util = new HttpUtils(params[0]);
        response = util.getContent();
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return response;
}

@Override
protected void onPostExecute(String result) {
    super.onPostExecute(result);
}
Run Code Online (Sandbox Code Playgroud)

在我的活动中,我得到了结果 response = new GetUrlDataTask().execute("site").get;

android http android-asynctask

3
推荐指数
2
解决办法
1万
查看次数