Tag: android intent

从意图解组extras抛出一个异常,但只在onActivityReenter期间

我只是尝试实现onActivityReenter在重新输入转换运行之前做一个特殊的UI更新。 我从onActivityResult字面上的请求代码块,并分成2部分,一个进入onActivityReenter,另一个留在那里: BEFORE: (onActivityResult) if (resultCode == RESULT_OK) { // replace the MatchPlaySubmit model data?.let { this.dataBinding.submitModel = data.getMatchPlaySubmitModel() val profIndex = data.getMatchPlayFinalProfileIndex() dataBinding.matchPlay.matchPlayPicker.jumpToProfileNumber(profIndex + 1) this.updatePickerView() } } override fun onActivityReenter(resultCode: Int, data: Intent?) { if (resultCode == RESULT_OK && data != null) { // makes sure that the data is from pager, since […]

为什么捆绑意图迷路了?

我有一个Serializable特殊对象的一些参数(位置等依次Serializable以及) 我想通过一个Activity( MySpecialActivity )通过处理一个SpecialObject对象来打开一个Fragment( MySpecialFragment )。 到目前为止,我可以触发并打开MySpecialFragment但是SpecialObject没有正确处理。 我觉得我无法看到树木的森林。 调试它: val PARAM_BUNDLE = "bundle_extra" val PARAM_SPECIAL_EXTRA = "special_bundle_extra" class MySpecialActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_my_special) val sameIntentSht = intent // same as getIntent() val extras = intent.extras // same as getIntent().getExtras() val bundleExtras = intent.getBundleExtra(PARAM_BUNDLE) val extras2 = sameIntentSht.extras val bundleExtras2 […]

如何使用Intent Anko的调用包装?

我正在学习Anko commons,在那里,我看到Intent很容易编写代码到startActivity。 它正在工作。 但是我看到Anko为一些广泛使用的意图调用包装: Goal Solution ———— ——————- Make a call makeCall(number) without tel: Send a text sendSMS(number, [text]) without sms: Browse the web browse(url) Share some text share(text, [subject]) Send a email email(email, [subject], [text]) 所以我想用这个包装,但不知道如何。 我怎样才能使用这个? 参考像: https : //github.com/Kotlin/anko/wiki/Anko-Commons-%E2%80%93-Intents#useful-intent-callers @ 9spl你在答案中写的是什么我知道所有和我已经使用了最新的依赖,但我的第一个问题是如何使用makeCall() 。 但是我得到了答案如何使用然后我有另一个问题, makeCall()不起作用。 我已经声明权限,虽然它不工作。 为什么? sendSMS()和browse()都在工作,但是makeCall()不起作用。

Android – 选择并查看任何类型的文件

我想让用户能够在手机中选择任何文件类型,然后再用意图查看。 选择文件项目我写这个(我正在使用Kotlin,Java中的相同问题): fun goToDocumentPicker() { val intent = Intent(Intent.ACTION_OPEN_DOCUMENT) intent.addCategory(Intent.CATEGORY_OPENABLE) intent.type = "*/*" if (intent.resolveActivity(mContext.packageManager) != null) mContext.startActivityForResult(intent, REQUEST_DOCUMENT) } 并显示选择的项目: fun showDocumentPreviewer(uri: Uri) { val i = Intent(Intent.ACTION_VIEW) i.data = uri mContext.startActivity(i) } 文档选取器工作正常,在onActivityResult我可以接收所选文档的Uri对象,但文档预览器无法打开对象。 已经尝试将mime-type设置为预览者的意图,但不成功。 我使用不正确的方式在Android中打开文件? 任何通用的方式来显示Android中的任何文件类型? (因为我想支持多种文件类型) 采摘Uri: content://com.android.providers.media.documents/document/image:80 更新:基于@ CommonsWare的评论,我编辑了如下的预览功能: fun showAttachmentPreviewer(uri: Uri, mimeType: String?) { Log.d("TEST", "Preview " + uri.toString()) val […]

BroadcastReceiver通过ACTION_SEND处理文件?

Android中是否可以创建BroadcastReceiver来处理从其他应用程序共享的文件? 在清单中我写道: <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <receiver android:name=".modules.file.FileReceiver" > <intent-filter> <category android:name="android.intent.category.DEFAULT" /> <action android:name="android.intent.action.SEND" /> <action android:name="android.intent.action.SEND_MULTIPLE" /> <data android:mimeType="application/pdf" /> </intent-filter> </receiver> 和我的FileReceiver文件(kotlin): class FileReceiver : WakefulBroadcastReceiver() { override fun onReceive(context: Context?, intent: Intent?) { context?.startService(Intent(context, FileHandlingIntentService::class.java)) } } 但我不能发送文件从文件管理器到我的应用程序,因为我的应用程序不在应用程序的列表中可以处理文件…是否真的可以处理文件只在活动? 有什么建议么?

意图在Android的webview中播放任何嵌入的视频

基本上,我正在使用kotlin构建一个小型webview应用程序。 我所针对的网站不提供直接链接到视频,所以试图通过shouldOverrideUrlLoading函数来匹配URI不起作用。 我也尝试过使用setDownloadListener()但似乎无论如何都无法使它在kotlin中正常工作。 有一些其他的webViewClient/ChromeViewClient函数,我需要重写,以获得这种功能的工作? 我可以让视频在页面上的HTML5 / Flash浏览器中播放,但是我希望能够发送一个像mxplayer或默认的Android视频播放器的意图。 我已经看了一下堆栈溢出,但还没有找到我所需要的。 任何帮助,将不胜感激。 编辑:它已经2年了,因为我已经使用Xamarin以外的机器人,我用它作为学习kotlin的一种方式。 像SetPluginState的许多webview设置似乎被折旧,所以我感觉有点迷失atm。

为什么Intent构造函数在伴随对象中是不可见的? Kotlin

class MainActivity : AppCompatActivity() { companion object { fun makeIntent(pos : Int) { println("${pos} is here!") var intent = Intent(this, DetailActivity::class.java) if (intent != null) { println("intent is not null in makeIntent function") } else { println("intent is null in makeIntent function") } } } … } 在做var intent = Intent(…)时候没有看到Intent。 为什么?

如何结合Kotlin中的Intent标志

我想结合两个intent标志,就像我们在android中做的那样 Intent intent = new Intent(this, MapsActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK); 我试图做这样的事情,但它不适合我 val intent = Intent(context, MapActivity::class.java) intent.flags = (Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK)

意图问题在Android应用程序从Java到KOTLIN

09-22 11:14:21.804 13211-13211/com.example.balarajum.kotlin E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.balarajum.kotlin, PID: 13211 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.balarajum.kotlin/com.example.balarajum.kotlin.Main2Activity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2348) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2410) at android.app.ActivityThread.access$800(ActivityThread.java:151) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1313) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5345) Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or […]

Kotlin从意图捆绑getParcelableArray不能将其转换为自定义类型

我遇到了一个奇怪的问题。 我有一个类,它在kotlin中实现Parcelable接口。 我从一个活动传递类A的数组到另一个没有问题在这里。 var arrayOfA:Array<A> // just to tell the type assume the array is initialised with the value intent.putExtra("array", arrayOfA) 但是,在另一个活动中接收它时,我不能将它分配给Array类型的变量,它要求将它分配给数组,当A在类型parcelable时,为什么我无法为其分配变量。 in second Activity var arrayOfA:Array<A>?=null arrayA=intent.get("array") as Array<A> // Problem here. Class cast exception 我无法理解为什么。 有人能帮我吗? 我不想将变量类型更改为Array,因为它有许多相互依赖性(这里的类只是一个示例) ======================================== class A(val a:String?,val b:String?):Parcelable { constructor(parcel: Parcel) : this( parcel.readString(), parcel.readString()) { } override fun […]