小编Adi*_*nia的帖子

将数据发送回Android中的主要活动

我有两个活动:主要活动和儿童活动.
当我按下主活动中的按钮时,将启动子活动.

现在我想将一些数据发送回主屏幕.我使用了Bundle类,但它不起作用.它会抛出一些运行时异常.

这有什么解决方案吗?

android android-intent

277
推荐指数
9
解决办法
27万
查看次数

Android - SPAN_EXCLUSIVE_EXCLUSIVE跨度不能为零长度

我有以下布局(几乎为空):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/set_layout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:contentDescription="content desc"
    android:orientation="vertical" >

    <TextView android:id="@+id/text"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="Hello, I am a TextView" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

Activity类包含以下内容:

public class TestActivity extends Activity {
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_test);   
  }
}
Run Code Online (Sandbox Code Playgroud)

当我在移动设备上运行时,出现以下错误:

SpannableStringBuilder
SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
Run Code Online (Sandbox Code Playgroud)

我已经尝试过使用和不使用TextView并且错误仍然存​​在,我必须做一些根本错误的基本错误导致这种情况.

有没有人对如何在没有错误的情况下加载它有任何想法?

java android

182
推荐指数
5
解决办法
19万
查看次数

奥利奥没有显示通知

普通通知生成器不会在Android O上显示通知.

如何在Android 8 Oreo上显示通知?

是否有任何新代码要添加以在Android O上显示通知?

android android-notifications android-8.0-oreo

171
推荐指数
9
解决办法
13万
查看次数

意图 - 如果活动正在运行,请将其置于最前面,否则启动一个新的(来自通知)

我的应用程序有通知,这是 - 很明显 - 没有任何标志,每次启动一个新的活动,所以我得到对方的顶部,这是错误的运行多个同样的活动.

我想要它做的是将通知挂起意图中指定的活动带到前面(如果它已在运行),否则启动它.

到目前为止,我所拥有的通知的意图/待定意图是

private static PendingIntent prepareIntent(Context context) {
    Intent intent = new Intent(context, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);

    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
}
Run Code Online (Sandbox Code Playgroud)

奇怪的是,它有时会起作用,有时它不会......我觉得我已经尝试了每一个标志组合.

android android-intent android-activity android-pendingintent

122
推荐指数
5
解决办法
7万
查看次数

如何在Eclipse for Android中启用LogCat/Console?

在Android中处理一个简单的程序时,我错误地关闭了LogCat窗口,我想知道如何再次显示它.

eclipse android logcat

118
推荐指数
4
解决办法
13万
查看次数

无法添加窗口 - 令牌android.os.BinderProxy无效; 你的活动在运行吗?

我尝试通过Facebook API连接Facebook,我按照这个例子:https://github.com/facebook/facebook-android-sdk/tree/master/examples/simple

一切都还可以,但是当我尝试编辑一些代码时,我的意思是我希望在登录成功后显示对话框发布消息,如下所示:

public void onAuthSucceed() {
        mText.setText("You have logged in! ");   
        //This is the code to call the post message dialog.                     
        mFacebook.dialog(Example.this, "feed",new SampleDialogListener());   
    }
Run Code Online (Sandbox Code Playgroud)

我在logcat中收到此错误:

03-02 13:32:08.629: E/AndroidRuntime(14991): android.view.WindowManager$BadTokenException: Unable to add window -- token android.os.BinderProxy@405180f8 is not valid; is your activity running?
03-02 13:32:08.629: E/AndroidRuntime(14991):    at android.view.ViewRoot.setView(ViewRoot.java:532)
03-02 13:32:08.629: E/AndroidRuntime(14991):    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
03-02 13:32:08.629: E/AndroidRuntime(14991):    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
03-02 13:32:08.629: E/AndroidRuntime(14991):    at android.view.Window$LocalWindowManager.addView(Window.java:424)
03-02 13:32:08.629: E/AndroidRuntime(14991):    at android.app.Dialog.show(Dialog.java:241)
03-02 13:32:08.629: E/AndroidRuntime(14991):    at com.facebook.android.Facebook.dialog(Facebook.java:780)
03-02 13:32:08.629: …
Run Code Online (Sandbox Code Playgroud)

android facebook

98
推荐指数
4
解决办法
11万
查看次数

Google Maps Android API v2授权失败

我的步骤:

  • 从debug.keystore获取SHA1代码
  • 在谷歌apis控制台中创建应用程序
  • 启用了谷歌地图api v2
  • 输入SHA1; my.package.name
  • 获取API密钥
  • 创建AndroidManifest文件:

        <permission
                android:name="my.package.name.permission.MAPS_RECEIVE"
                android:protectionLevel="signature"/>
    
        <uses-permission android:name="my.package.name.permission.MAPS_RECEIVE"/>
    
        <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="15"/>
    
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
        <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    
        <uses-feature android:glEsVersion="0x00020000" android:required="true"/>
    
        <application android:label="@string/app_name" android:icon="@drawable/ic_launcher" android:hardwareAccelerated="true">
    
            <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="MY_API_KEY_HERE" />
    
            <activity android:name="MyActivity"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN"/>
                    <category android:name="android.intent.category.LAUNCHER"/>
                </intent-filter>
            </activity>
        </application>
    </manifest>
    
    Run Code Online (Sandbox Code Playgroud)
  • 创建布局

  • 把"google-play-services.jar"放到libs上

编译后我崩溃了:

  ERROR/AndroidRuntime(10182): FATAL EXCEPTION: main
                java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable
                at com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(Unknown Source)
                at com.google.android.gms.maps.MapFragment.onInflate(Unknown Source)
                at android.app.Activity.onCreateView(Activity.java:4716)
                at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)
                at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
                at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
                at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
                at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:270)
                at android.app.Activity.setContentView(Activity.java:1881) …
Run Code Online (Sandbox Code Playgroud)

android google-maps android-maps google-maps-android-api-2

92
推荐指数
6
解决办法
13万
查看次数

63
推荐指数
4
解决办法
8万
查看次数

如何在一个应用程序中添加多个小部件?

我刚刚完成了我的Android小部件.现在我需要有不同大小的这个wiget供用户选择.例如,我需要一个中型,小型和大型小部件.因此,当用户安装应用程序并按住主屏幕然后选择小部件时,在小部件菜单中我希望他看到具有相同应用程序名称但具有大小的三个小部件.这样的事情:

helloSmall helloMedium helloLarge

我准备好了中等版本但是如何在同一个应用程序中制作小型和大型?知道所有三种尺寸都包含相同的确切数据和动作,只是尺寸和背景不同.

谢谢.

android android-widget

62
推荐指数
4
解决办法
3万
查看次数

我怎么知道我的WebView 100%加载?

我正在尝试在我的WebView中加载一些包含JavaScript的HTML代码.

现在,我想测试我的WebView是否在5秒之前加载.我已经尝试过这种方法getProgress(),但有时我得到的结果是100,但我的Webview没有加载.
有没有其他方法可以确保我的Webview 100%加载?

这是我的代码的一部分:

sdk.getWebView().loadDataWithBaseURL("notreal/", data_html,MIME_TYPE,ENCODING_UTF_8,null);

Timer timer = new Timer();
TimerTask task = new TimerTask() {

    @Override
    public void run(){                      
    Log.i("TAG", "progress fin = "+sdk.getWebView().getProgress());

    if(sdk.getWebView().getProgress() <100){
        //cancel the webView
        sdk.getContext().runOnUiThread(new Runnable() {
             @Override
             public void run() {
            sdk.getImgView().setVisibility(View.VISIBLE);
            sdk.getWebView().setVisibility(View.GONE);
             }
        });
    }

    // else ,the Webview is loaded
    else{
        //prepare webview 
        sdk.getContext().runOnUiThread(new Runnable() {
            @Override
            public void run(){
                     // hide imageView
                     sdk.getImgView().setVisibility(View.GONE);
                     sdk.getWebView().setVisibility(View.VISIBLE);
            }
        });
    }

 }
 };
 timer.schedule(task, 5000);
Run Code Online (Sandbox Code Playgroud)

android android-webview

54
推荐指数
5
解决办法
7万
查看次数