Intent ACTION_XXX当有Internet连接时,是否有Android 通知我?
我想实例化BroadcastReceiver当用户启用Internet连接时通知我的应用程序(通过wifi,通过GSM等)
谁能帮助我?
我在活动A中有一个整数数组:
int array[] = {1,2,3};
Run Code Online (Sandbox Code Playgroud)
我想将该变量发送到活动B,因此我创建了一个新的intent并使用了putExtra方法:
Intent i = new Intent(A.this, B.class);
i.putExtra("numbers", array);
startActivity(i);
Run Code Online (Sandbox Code Playgroud)
在活动BI中获取信息:
Bundle extras = getIntent().getExtras();
int arrayB = extras.getInt("numbers");
Run Code Online (Sandbox Code Playgroud)
但这并不是真的发送数组,我只是在arrayB上得到值'0'.我一直在寻找一些例子,但我没有发现任何事情.
我想通过意图发送短信,但是当我使用此代码时,它会将我重定向到错误的联系人:
Intent intentt = new Intent(Intent.ACTION_VIEW);
intentt.setData(Uri.parse("sms:"));
intentt.setType("vnd.android-dir/mms-sms");
intentt.putExtra(Intent.EXTRA_TEXT, "");
intentt.putExtra("address", phone number);
context.startActivity(intentt);
Run Code Online (Sandbox Code Playgroud)
为什么?此外,我知道一种方法来跟踪短信发送,但我不知道如何编码:
Starting activity: Intent {
act=android.intent.action.SENDTO dat=smsto:%2B**XXXXXXXXXXXX** flg=0x14000000
cmp=com.android.mms/.ui.ComposeMessageActivity }
Run Code Online (Sandbox Code Playgroud)
其中XXXXXXXXXXXX是电话号码.
我需要一些帮助来了解何时我可以预期我的广播接收器只能在清单中注册而不必从正在运行的活动或服务进行注册.
因此,例如,如果我使用以下intent过滤器注册一个独立的接收器,它可以在没有服务/活动引用的情况下工作:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.blk_burn.standalonereceiver"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name="TestReceiver">
<intent-filter>
<action android:name="android.media.AUDIO_BECOMING_NOISY"/>
</intent-filter>
</receiver>
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
但是如果我更换android.media.AUDIO_BECOMING_NOISY与android.intent.action.HEADSET_PLUG接收器没有被触发(Android文档)
根据我在本网站上发现的内容,您必须从已经运行的活动或服务中注册此接收器(Post).
任何人都可以告诉我为什么这只是在清单中调整你的意图过滤器以及为什么你需要在后台运行引用/注册接收器的服务?
是否有一个解决方法,以便我可以使用意图过滤器在我的应用程序的清单中注册我的接收器android.intent.action.HEADSET_PLUG?
如何识别Android文档中哪些广播操作需要有服务或活动注册它们而不是在清单中使用正确的过滤器?
有没有办法使用intent.setType()和提供多种广泛类型(如图像和视频)?
我正在使用ACTION_GET_CONTENT.它似乎只使用逗号分隔类型.
我正在为Android 2.1开发一个应用程序.我想让我的用户在我的应用程序中选择个人资料图片(我没有使用联系人框架).
理想的解决方案是启动一个使用户能够从图库中选择图像的意图,但如果没有合适的图像,则使用相机拍照(反之亦然,即允许用户拍照,但如果他们知道他们已经有了合适的图像,让他们进入画廊并选择所述图像).
目前我可以做其中一个但不能两个都做.
如果我使用MediaStore.ACTION_IMAGE_CAPTURE直接进入相机模式,则无法进入图库.
如果我使用Intent.ACTION_PICK直接进入图库,那么我可以选择一个图像,但是如果我单击相机按钮(在图库的右上角),则会触发新的相机意图.因此,拍摄的任何照片都不会直接返回给我的应用程序.(当然你可以按后退按钮退回到图库并从那里选择图像,但这是一个额外的不必要的步骤,并不是很直观).
那么有没有办法将两者结合起来,或者我是否必须提供一个菜单来从我的应用程序中做一个或另一个?看起来这将是一个常见的用例...当然我错过了什么?
我有一个bmp在Activity1中命名的Bitmap变量,我想将位图发送到Activity2
以下是我用来传递意图的代码.
Intent in1 = new Intent(this, Activity2.class);
in1.putExtra("image",bmp);
startActivity(in1);
Run Code Online (Sandbox Code Playgroud)
在Activity2中,我尝试使用以下代码访问位图
Bundle ex = getIntent().getExtras();
Bitmap bmp2 = ex.getParceable("image");
ImageView result = (ImageView)findViewById(R.Id.imageView1);
result.setImageBitmap(bmp);
Run Code Online (Sandbox Code Playgroud)
应用程序运行时没有例外,但它没有给出预期的结果
我已经用serializable实现了我的类,但它仍然没有用.
这是我的班级:
package com.ursabyte.thumbnail;
import java.io.Serializable;
import android.graphics.Bitmap;
public class Thumbnail implements Serializable {
private static final long serialVersionUID = 1L;
private String label = "";
private Bitmap bitmap;
public Thumbnail(String label, Bitmap bitmap) {
this.label = label;
this.bitmap = bitmap;
}
public void set_label(String label) {
this.label = label;
}
public String get_label() {
return this.label;
}
public void set_bitmap(Bitmap bitmap) {
this.bitmap = bitmap;
}
public Bitmap get_bitmap(){
return this.bitmap;
}
// @Override
// public int compareTo(Thumbnail other) …Run Code Online (Sandbox Code Playgroud) 我想从默认的preferences.xml启动一个Activity,带有<intent>标签.活动经过充分测试,问题不在于此.(我在我的应用程序中扩展了PreferenceActivity,所以preferences.xml"来了")请查看代码,出了什么问题?
的preferences.xml:
....
<PreferenceCategory
android:title="@string/titleEtcSetup">
<PreferenceScreen
android:key="renameCourses"
android:title="@string/titleRenameCourses"
android:summary="@string/textRenameDisplayedCoursesNames">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="my.notifier.ui"
android:targetClass="my.notifier.ui.EditCoursesNamesActivity" />
</PreferenceScreen>
.....
</PreferenceCategory>
.....
Run Code Online (Sandbox Code Playgroud)
manifest.xml文件:
....
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.notifier.ui"....
....
<activity android:name=".EditCoursesNamesActivity" android:label="@string/titleRenameCourses">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
.....
Run Code Online (Sandbox Code Playgroud)
当我按下"renameCourses项目"时,活动没有调用,没有任何反应.LogCat是"清除",没有错误或警告.我经常搜索,我找不到解决方案,也许我只是错过了一些东西......请帮助!
我试图让用户在他的设备上选择他们想要的任何图像作为我正在构建的壁纸应用程序中的壁纸.出于某种原因,我写道:
Intent myIntent = new Intent(Intent.ACTION_PICK);
myIntent.setType("image/*");
startActivityForResult(myIntent, 100);
Run Code Online (Sandbox Code Playgroud)
我直接进入画廊,但是当我写道:
Intent myIntent = new Intent(Intent.ACTION_GET_CONTENT, null);
myIntent.setType("image/*");
startActivityForResult(myIntent, 100);
Run Code Online (Sandbox Code Playgroud)
我可以选择图库或Google云端硬盘.让用户选择每次检索图片的应用程序的最佳方法是什么?或者为什么这两个不同的意图常数有所不同?
android ×10
android-intent ×10
java ×3
bitmap ×1
bundle ×1
camera ×1
gallery ×1
image ×1
intentfilter ×1
mime-types ×1
sms ×1