在我的Android应用程序中,我使用谷歌播放服务来查看谷歌地图
当设备现在安装了Google Play服务时,Android会显示一个按钮,显示“获取Google Play服务” 这个按钮来自android本身,我没有创建它。
问题在于,当用户点击该按钮时,应用程序崩溃。
我试图跟踪代码和调试,但没有代码(我没有为它创建任何代码)
我收到此错误,不确定如何解决此问题。
任何想法?
由于
05-06 23:58:17.730 2695-2695/com.asmgx.schlogger.app D/AndroidRuntime﹕ Shutting down VM
05-06 23:58:17.730 2695-2695/com.asmgx.schlogger.app E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.asmgx.schlogger.app, PID: 2695
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=market://details?id=com.google.android.gms flg=0x80000 pkg=com.android.vending }
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1781)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1501)
at android.app.Activity.startActivityForResult(Activity.java:3745)
at android.app.Activity.startActivityForResult(Activity.java:3706)
at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:817)
at android.app.Activity.startActivity(Activity.java:4016)
at android.app.Activity.startActivity(Activity.java:3984)
at com.google.android.gms.dynamic.zza$5.onClick(Unknown Source)
at android.view.View.performClick(View.java:4780)
at android.view.View$PerformClick.run(View.java:19866)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5257)
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:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
答案 0 :(得分:1)
您收到此错误是因为您在没有Google Play商店的Android设备上运行代码。
您可以检查您的意图是否会成功:
public static boolean copyFile(String in, String out, boolean deleteOriginal)
{
try
{
byte[] buf = new byte[4096];
FileInputStream fin = new FileInputStream(in);
FileOutputStream fout = new FileOutputStream(out);
int r;
while ((r=fin.read(buf,0,buf.length)) > 0)
fout.write(buf,0,r);
fin.close();
fout.close();
if (deleteOriginal)
new File(in).delete();
return true;
}
catch (Exception e)
{
handleException(e,false);
return false;
}
}