如何在先前在其设备上安装应用程序的用户卸载应用程序之前启动活动、服务或广播接收器?
如果可能,请帮助我?并提前致谢
现在我有一个活动,我希望通过该活动调用名为MyService的服务.我写
Intent i =new Intent(this,MyService.class);
i.putExtra("s", s);
startService(i);
Run Code Online (Sandbox Code Playgroud)
在活动中,我输入了MyService.java
@Override
public void onStart(Intent intent, int startId)
{
// TODO: Implement this method
super.onStart(intent, startId);
connect(intent);
try{
connect(intent);
Intent i=new Intent();
s=i.getStringExtra("s").toString();
sendData(s);
} catch(IOError e)
{
Toast.makeText(getBaseContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我运行代码时,我得到了一个NullPointException
s=i.getStringExtra("s").toString();
请问谁可以告诉我哪里出错了,我该怎么办,谢谢.
然后,我得到了我的应用程序的日志,其包名为"com.TsyQi.Sensor"
java.lang.RuntimeException:无法使用Intent {cmp = com.TsyQi.Sensor/.MyService}启动服务com.TsyQi.Sensor.MyService@26abf3ed:
java.lang.NullPointerException:尝试在空对象引用上调用虚方法'java.lang.String java.lang.String.toString()'
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2882)
at android.app.ActivityThread.access$2100(ActivityThread.java:147)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5233)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)
Run Code Online (Sandbox Code Playgroud)
引起:
java.lang.NullPointerException:尝试在空对象引用上调用虚方法'java.lang.String java.lang.String.toString()'
at com.TsyQi.Sensor.MyService.onStart(MyService.java:227)
at android.app.IntentService.onStartCommand(IntentService.java:130)
at …Run Code Online (Sandbox Code Playgroud) 为什么我们需要设置开/关GPS,另一方面我们可以通过编程方式打开/关闭WIFI和蓝牙而无需移动设置.Android指南已更改为4.0以上版本.对于4.0以上的版本,您无法以编程方式更改GPS.
gps android android-intent android-location google-play-services
我在 MainActivity 上有两个按钮。一种用于从图库中选择图像,另一种用于相机图像捕获。我想将这些图像发送到第二个活动。当我尝试图库图像时,我成功了。但是,现在我想将捕获的图像也传递给第二个活动。我尝试了很多代码,但无法得到想要的结果。
下面是我的代码......
主活动.java
package com.MyFirstApp.myfirstapp;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
Button btn_choose_from_gallery, btn_go_to_camera;
int REQUEST_GALLERY = 1;
int REQUEST_CAMERA = 100;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn_choose_from_gallery = (Button) findViewById(R.id.btn_choose_from_gallery);
btn_go_to_camera = (Button) findViewById(R.id.btn_go_to_camera);
btn_choose_from_gallery.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(
Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(i, …Run Code Online (Sandbox Code Playgroud) 我有一个自定义类'Game',我在活动代码的顶部初始化.然后我去另一个活动,通常我通过arraylists等但我想转移到我的自定义类.....
我的自定义类'游戏'是一堆字符串和arraylists与getter和setter mehtods.
我得到了
游戏不是可分割或可序列化的对象
我尝试将其添加到意图时出错.我能在这做什么?
//Init Instance of Game class
Game newGame = new Game();
Run Code Online (Sandbox Code Playgroud)
设置我的听众.它适用于
//Setup onclick listeners
text.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i = new Intent(this_Activity.this, next_Activity.class);
i.putExtra("players", myList);
i.putExtra("newGame", (Parcelable) newGame);
startActivityForResult(i, 0);
}
});
Run Code Online (Sandbox Code Playgroud) 我尝试做一个简单的应用程序,在 Intent Not working 中,它显示了这个错误:
Activity 中的 startActivities(android.content.Intent[]) 不能应用于 (android.content.Intent)
为什么?
请看下面我的代码:
public class SplashActivity extends Activity implements Animation.AnimationListener {
ImageView imageView;
Button button;
Animation animationbounce;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
imageView = (ImageView)findViewById(R.id.face);
button = (Button)findViewById(R.id.splash);
animationbounce = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.bounce);
animationbounce.setAnimationListener(this);
imageView.setVisibility(View.VISIBLE);
imageView.startAnimation(animationbounce);
animationbounce.setRepeatMode(Animation.REVERSE);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
imageView.setVisibility(View.VISIBLE);
imageView.startAnimation(animationbounce);
}
});
Thread timerThread = new Thread() {
public void run() {
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace(); …Run Code Online (Sandbox Code Playgroud) 任何人都可以在android studio中解决这个问题。我想要让文件资源管理器选择一个存储中的文件,我在谷歌上搜索了发送意图以选择一个文件并获得了以下代码:
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
Intent i = Intent.createChooser(intent, "File");
startActivityForResult(i, CHOOSE_FILE_REQUESTCODE);
Run Code Online (Sandbox Code Playgroud)
和这个:
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.setType("*/*");
startActivityForResult(intent,PICKFILE_RESULT_CODE);
Run Code Online (Sandbox Code Playgroud)
我尝试了它们,但它们都没有为我解决相同的错误PICKFILE_RESULT_CODE,PICKFILE_REQUEST_CODE并且CHOOSE_FILE_REQUESTCODE没有在 android studio 中定义为变量。
错误是:
无法解析符号“PICKFILE_RESULT_CODE”
如果有人可以解决这个问题,请写下你的解决方案。
注:Android Studio版本为3.0.1
阅读本文档https://developer.android.com/training/camera/photobasics后,我想拍摄一张照片并将照片的 uri 存储到给定的变量中。问题是我使用takePictureIntent.putExtra(Constants.INTENT_EXTRA_VARNAME, variable)and将变量名称和 uri 存储到意图中takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI),但在 onActivityResult 中意图数据为空,并且存储的变量和 uri 都不为空。我需要知道 uri 和变量。我究竟做错了什么?
我需要将信息作为意图数据传递,因为触发显示相机的操作的类与活动类不同。
带有动作的类:
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
takePictureIntent.putExtra(Constants.INTENT_EXTRA_VARNAME, variable);
// Ensure that there's a camera activity to handle the intent
if (takePictureIntent.resolveActivity(SectionManager.getInstance().getCurrentActivity().getPackageManager()) != null) {
// Create the File where the photo should go
File photoFile = null;
try {
photoFile = createImageFile();
} catch (IOException ex) {
ex.printStackTrace();
}
// Continue only if the File was successfully created
if (photoFile …Run Code Online (Sandbox Code Playgroud) camera android android-intent android-camera onactivityresult
我有两个类,如firstactivity.java和secondactivity.java.在第一个活动中,当我单击按钮(提交)时,我有一个按钮(提交)我想将firstactivity.java的数据传递给服务器.我怎样才能做到这一点?
提前致谢.
我正在尝试将值K从活动A传递到B.当button单击活动B中的保存时,它将再次将值k传递给活动A. 但如果我想返回A,应用程序崩溃了.
活动A中的一些代码片段
public void onClick(DialogInterface dialog, int item) {
if (item == 0) {
Intent intent = new Intent(getActivity().getApplicationContext(), Project1.class);
intent.putExtra("k",k);
startActivityForResult(intent, 0);
} else if (item == 1) {
Intent intent = new Intent(getActivity().getApplicationContext(), Petrol.class);
intent.putExtra("k", k);
startActivityForResult(intent, 1);
}
public void onActivityResult(int requestCode, int resultCode, Intent data) {
int button = data.getIntExtra("k1", 0);
if (button == 1) {
switch (requestCode) {
case 0:
String result = data.getStringExtra("text");
String b = data.getStringExtra("a");
as=Long.parseLong(result);
c.setText(" " + …Run Code Online (Sandbox Code Playgroud) android ×10
android-intent ×10
java ×2
button ×1
buttonclick ×1
camera ×1
database ×1
gps ×1
parcelable ×1